.gooey-nav-container{--linear-ease: linear( 0, .068, .19 2.7%, .804 8.1%, 1.037, 1.199 13.2%, 1.245, 1.27 15.8%, 1.274, 1.272 17.4%, 1.249 19.1%, .996 28%, .949, .928 33.3%, .926, .933 36.8%, 1.001 45.6%, 1.013, 1.019 50.8%, 1.018 54.4%, 1 63.1%, .995 68%, 1.001 85%, 1 );--color-1: #ffffff;--color-2: #e5e5e5;--color-3: #a3a3a3;--color-4: #ffffff;position:relative}.gooey-nav-container nav{display:flex;position:relative;transform:translateZ(.01px)}.gooey-nav-container nav ul{display:flex;gap:.4em;list-style:none;padding:0 .5em;margin:0;position:relative;z-index:3;color:#e8e8e8;text-shadow:0 1px 1px hsl(205deg 30% 10% / .2)}.gooey-nav-container nav ul li{border-radius:100vw;position:relative;cursor:pointer;transition:background-color .3s ease,color .3s ease,box-shadow .3s ease;box-shadow:0 0 .5px 1.5px transparent;color:#e8e8e8;font-size:14px;font-weight:600}.gooey-nav-container nav ul li a{display:inline-block;padding:.5em .8em;color:inherit;text-decoration:none}.gooey-nav-container nav ul li:focus-within:has(:focus-visible){box-shadow:0 0 .5px 1.5px #fff}.gooey-nav-container nav ul li:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:100vw;background:#fff;opacity:0;transform:scale(0);transition:all .3s ease;z-index:-1}.gooey-nav-container nav ul li.active{color:#000;text-shadow:none}.gooey-nav-container nav ul li.active:after{opacity:1;transform:scale(1)}.gooey-nav-container .effect{position:absolute;left:0;top:0;width:0;height:0;opacity:1;pointer-events:none;display:grid;place-items:center;z-index:1}.gooey-nav-container .effect.text{display:none}.gooey-nav-container .effect.filter{filter:blur(7px) contrast(100) blur(0);mix-blend-mode:lighten}.gooey-nav-container .effect.filter:before{content:"";position:absolute;top:-75px;right:-75px;bottom:-75px;left:-75px;z-index:-2;background:transparent}.gooey-nav-container .effect.filter:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;transform:scale(0);opacity:0;z-index:-1;border-radius:100vw}.gooey-nav-container .effect.active:after{animation:pill .3s ease backwards}@keyframes pill{to{transform:scale(1);opacity:1}}.gooey-nav-container .particle,.gooey-nav-container .point{display:block;opacity:0;width:20px;height:20px;border-radius:100%;transform-origin:center}.gooey-nav-container .particle{--time: 5s;position:absolute;top:calc(50% - 8px);left:calc(50% - 8px);animation:particle calc(var(--time)) ease 1 -.35s}.gooey-nav-container .point{background:var(--color);opacity:1;animation:point calc(var(--time)) ease 1 -.35s}@keyframes particle{0%{transform:rotate(0) translate(calc(var(--start-x)),calc(var(--start-y)));opacity:1;animation-timing-function:cubic-bezier(.55,0,1,.45)}70%{transform:rotate(calc(var(--rotate) * .5)) translate(calc(var(--end-x) * 1.2),calc(var(--end-y) * 1.2));opacity:1;animation-timing-function:ease}85%{transform:rotate(calc(var(--rotate) * .66)) translate(calc(var(--end-x)),calc(var(--end-y)));opacity:1}to{transform:rotate(calc(var(--rotate) * 1.2)) translate(calc(var(--end-x) * .5),calc(var(--end-y) * .5));opacity:1}}@keyframes point{0%{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.55,0,1,.45)}25%{transform:scale(calc(var(--scale) * .25))}38%{opacity:1}65%{transform:scale(var(--scale));opacity:1;animation-timing-function:ease}85%{transform:scale(var(--scale));opacity:1}to{transform:scale(0);opacity:0}}.gooey-desktop{display:flex;align-items:center;gap:14px}.nav-links.nav-links-mobile{display:none}@media (max-width: 800px){.gooey-desktop,.nav-links.nav-links-mobile{display:none}.nav-links.nav-links-mobile.open{display:flex}}@media (prefers-reduced-motion: reduce){.gooey-nav-container .effect.active:after,.gooey-nav-container .particle,.gooey-nav-container .point{animation:none}.gooey-nav-container .particle,.gooey-nav-container .point{display:none}}.pc-card-wrapper{--pointer-x: 50%;--pointer-y: 50%;--pointer-from-center: 0;--pointer-from-top: .5;--pointer-from-left: .5;--card-opacity: 0;--rotate-x: 0deg;--rotate-y: 0deg;--background-x: 50%;--background-y: 50%;--grain: none;--icon: none;--behind-gradient: none;--behind-glow-color: rgba(255, 255, 255, .45);--behind-glow-size: 25%;--inner-gradient: none;--sunpillar-1: hsl(0, 0%, 45%);--sunpillar-2: hsl(0, 0%, 65%);--sunpillar-3: hsl(0, 0%, 80%);--sunpillar-4: hsl(0, 0%, 70%);--sunpillar-5: hsl(0, 0%, 55%);--sunpillar-6: hsl(0, 0%, 40%);--sunpillar-clr-1: var(--sunpillar-1);--sunpillar-clr-2: var(--sunpillar-2);--sunpillar-clr-3: var(--sunpillar-3);--sunpillar-clr-4: var(--sunpillar-4);--sunpillar-clr-5: var(--sunpillar-5);--sunpillar-clr-6: var(--sunpillar-6);--card-radius: 30px;perspective:500px;transform:translateZ(.1px);position:relative;touch-action:none}.pc-behind{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(circle at var(--pointer-x) var(--pointer-y),var(--behind-glow-color) 0%,transparent var(--behind-glow-size));filter:blur(50px) saturate(1.1);opacity:calc(.8 * var(--card-opacity));transition:opacity .2s ease}.pc-card-wrapper:hover,.pc-card-wrapper.active{--card-opacity: 1}.pc-card{height:80svh;max-height:540px;display:grid;aspect-ratio:.718;border-radius:var(--card-radius);position:relative;background-blend-mode:color-dodge,normal,normal,normal;animation:glow-bg 12s linear infinite;box-shadow:#000c calc((var(--pointer-from-left) * 10px) - 3px) calc((var(--pointer-from-top) * 20px) - 6px) 20px -5px;transition:transform 1s ease;transform:translateZ(0) rotateX(0) rotateY(0);background:#000000e6;backface-visibility:hidden;overflow:hidden}.pc-card:hover,.pc-card.active{transition:none;transform:translateZ(0) rotateX(var(--rotate-y)) rotateY(var(--rotate-x))}.pc-card-shell.entering .pc-card{transition:transform .18s ease-out}.pc-card-shell{position:relative;z-index:1}.pc-card *{display:grid;grid-area:1/-1;border-radius:var(--card-radius);pointer-events:none}.pc-inside{top:0;right:0;bottom:0;left:0;position:absolute;background-image:var(--inner-gradient);background-color:#000000e6;transform:none}.pc-shine{-webkit-mask-image:var(--icon);mask-image:var(--icon);mask-mode:luminance;-webkit-mask-repeat:repeat;mask-repeat:repeat;-webkit-mask-size:150%;mask-size:150%;-webkit-mask-position:top calc(200% - (var(--background-y) * 5)) left calc(100% - var(--background-x));mask-position:top calc(200% - (var(--background-y) * 5)) left calc(100% - var(--background-x));transition:filter .8s ease;filter:brightness(.66) contrast(1.33) saturate(.33) opacity(.5);animation:holo-bg 18s linear infinite;animation-play-state:running;mix-blend-mode:color-dodge}.pc-shine,.pc-shine:after{--space: 5%;--angle: -45deg;transform:translateZ(1px);overflow:hidden;z-index:3;background:transparent;background-size:cover;background-position:center;background-image:repeating-linear-gradient(0deg,var(--sunpillar-clr-1) calc(var(--space) * 1),var(--sunpillar-clr-2) calc(var(--space) * 2),var(--sunpillar-clr-3) calc(var(--space) * 3),var(--sunpillar-clr-4) calc(var(--space) * 4),var(--sunpillar-clr-5) calc(var(--space) * 5),var(--sunpillar-clr-6) calc(var(--space) * 6),var(--sunpillar-clr-1) calc(var(--space) * 7)),repeating-linear-gradient(var(--angle),#0e152e 0%,hsl(180,10%,60%) 3.8%,hsl(180,29%,66%) 4.5%,hsl(180,10%,60%) 5.2%,#0e152e 10%,#0e152e 12%),radial-gradient(farthest-corner circle at var(--pointer-x) var(--pointer-y),hsla(0,0%,0%,.1) 12%,hsla(0,0%,0%,.15) 20%,hsla(0,0%,0%,.25) 120%);background-position:0 var(--background-y),var(--background-x) var(--background-y),center;background-blend-mode:color,hard-light;background-size:500% 500%,300% 300%,200% 200%;background-repeat:repeat}.pc-shine:before,.pc-shine:after{content:"";background-position:center;background-size:cover;grid-area:1/1;opacity:0;transition:opacity .8s ease}.pc-card:hover .pc-shine,.pc-card.active .pc-shine{filter:brightness(.85) contrast(1.5) saturate(.5);animation-play-state:paused}.pc-card:hover .pc-shine:before,.pc-card.active .pc-shine:before,.pc-card:hover .pc-shine:after,.pc-card.active .pc-shine:after{opacity:1}.pc-shine:before{background-image:linear-gradient(45deg,var(--sunpillar-4),var(--sunpillar-5),var(--sunpillar-6),var(--sunpillar-1),var(--sunpillar-2),var(--sunpillar-3)),radial-gradient(circle at var(--pointer-x) var(--pointer-y),hsl(0,0%,70%) 0%,hsla(0,0%,30%,.2) 90%),var(--grain);background-size:250% 250%,100% 100%,220px 220px;background-position:var(--pointer-x) var(--pointer-y),center,calc(var(--pointer-x) * .01) calc(var(--pointer-y) * .01);background-blend-mode:color-dodge;filter:brightness(calc(2 - var(--pointer-from-center))) contrast(calc(var(--pointer-from-center) + 2)) saturate(calc(.5 + var(--pointer-from-center)));mix-blend-mode:luminosity}.pc-shine:after{background-position:0 var(--background-y),calc(var(--background-x) * .4) calc(var(--background-y) * .5),center;background-size:200% 300%,700% 700%,100% 100%;mix-blend-mode:difference;filter:brightness(.8) contrast(1.5)}.pc-glare{transform:translateZ(1.1px);overflow:hidden;background-image:radial-gradient(farthest-corner circle at var(--pointer-x) var(--pointer-y),hsl(248,25%,80%) 12%,hsla(207,40%,30%,.8) 90%);mix-blend-mode:overlay;filter:brightness(.8) contrast(1.2);z-index:4}.pc-avatar-content{mix-blend-mode:normal;overflow:hidden;transform:translateZ(2);backface-visibility:hidden}.pc-avatar-content .avatar{width:100%;height:100%;object-fit:cover;object-position:center top;position:absolute;left:50%;bottom:0;transform-origin:50% 100%;transform:translate(calc(-50% + (var(--pointer-from-left) - .5) * 6px)) translateZ(0);backface-visibility:hidden;will-change:transform;transition:transform .12s ease-out}.pc-avatar-content:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none}.pc-user-info{position:absolute;--ui-inset: 20px;--ui-radius-bias: 6px;bottom:var(--ui-inset);left:var(--ui-inset);right:var(--ui-inset);z-index:2;display:flex;align-items:center;justify-content:space-between;background:#ffffff1a;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid rgba(255,255,255,.1);border-radius:max(0px,var(--card-radius) - var(--ui-inset) + var(--ui-radius-bias));padding:12px 14px;pointer-events:auto}.pc-user-details{display:flex;align-items:center;gap:12px}.pc-mini-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;border:1px solid rgba(255,255,255,.1);flex-shrink:0}.pc-mini-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.pc-user-text{display:flex;align-items:flex-start;flex-direction:column;gap:6px}.pc-handle{font-size:14px;font-weight:500;color:#ffffffe6;line-height:1}.pc-status{font-size:14px;color:#ffffffb3;line-height:1}.pc-contact-btn{border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;font-size:12px;font-weight:600;color:#ffffffe6;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0f}.pc-contact-btn:hover{border-color:#fff6;transform:translateY(-1px);transition:all .2s ease}.pc-content:not(.pc-avatar-content){max-height:100%;overflow:hidden;text-align:center;position:relative;transform:translate3d(calc(var(--pointer-from-left) * -6px + 3px),calc(var(--pointer-from-top) * -6px + 3px),.1px);z-index:5;mix-blend-mode:luminosity}.pc-details{width:100%;position:absolute;top:3em;display:flex;flex-direction:column}.pc-details h3{font-weight:600;margin:0;font-size:min(5svh,3em);background-image:linear-gradient(to bottom,#fff,#6f6fbe);background-size:1em 1.5em;-webkit-text-fill-color:transparent;background-clip:text;-webkit-background-clip:text}.pc-details p{font-weight:600;position:relative;top:-12px;white-space:nowrap;font-size:16px;margin:0 auto;width:min-content;background-image:linear-gradient(to bottom,#fff,#4a4ac0);background-size:1em 1.5em;-webkit-text-fill-color:transparent;background-clip:text;-webkit-background-clip:text}@keyframes glow-bg{0%{--bgrotate: 0deg}to{--bgrotate: 360deg}}@keyframes holo-bg{0%{background-position:0 var(--background-y),0 0,center}to{background-position:0 var(--background-y),90% 90%,center}}.hero-profile{width:min(300px,100%);margin-inline:auto;justify-self:center;position:relative}.hero-profile-zoom{position:absolute;top:12px;right:12px;z-index:10;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:#0000008c;color:#fff;font-size:12px;font-weight:600;cursor:zoom-in;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .2s ease,background .2s ease}.hero-profile-zoom:hover{transform:translateY(-2px);background:#000c}.hero-profile-zoom:focus-visible{outline:2px solid #fff;outline-offset:2px}.hero-profile .pc-card{height:auto;width:100%;max-height:480px}.hero-profile .pc-details{display:none}.hero-profile .pc-details h3{font-size:clamp(22px,2.4vw,28px);line-height:1.15;background-image:linear-gradient(to bottom,#fff,#a3a3a3)}.hero-profile .pc-details p{white-space:normal;max-width:88%;top:0;margin-top:8px;line-height:1.5;font-size:14px}.hero-profile .pc-details p{background-image:linear-gradient(to bottom,#fff,#737373)}.hero-profile .pc-user-info{gap:8px}.hero-profile .pc-user-details{min-width:0;flex:1}.hero-profile .pc-user-text{min-width:0}.hero-profile .pc-status{font-size:12px;line-height:1.4}.hero-profile .pc-contact-btn{white-space:nowrap;flex-shrink:0}@media (max-width: 768px){.pc-card{height:70svh;max-height:450px}.hero-profile .pc-card{height:auto;max-height:440px}.pc-details{top:2em}.pc-details h3{font-size:min(4svh,2.5em)}.pc-details p{font-size:14px}.pc-user-info{--ui-inset: 15px;padding:10px 12px}.pc-mini-avatar{width:28px;height:28px}.pc-user-details{gap:10px}.pc-handle{font-size:13px}.pc-status{font-size:10px}.pc-contact-btn{padding:6px 12px;font-size:11px}}@media (max-width: 480px){.pc-card{height:60svh;max-height:380px}.hero-profile .pc-card{height:auto;max-height:400px}.pc-details{top:1.5em}.pc-details h3{font-size:min(3.5svh,2em)}.pc-details p{font-size:12px;top:-8px}.pc-user-info{--ui-inset: 12px;padding:8px 10px}.pc-mini-avatar{width:24px;height:24px}.pc-user-details{gap:8px}.pc-handle{font-size:12px}.pc-status{font-size:9px}.pc-contact-btn{padding:5px 10px;font-size:10px;border-radius:50px}}@media (max-width: 320px){.pc-card{height:55svh;max-height:320px}.pc-details h3{font-size:min(3svh,1.5em)}.pc-details p{font-size:11px}.pc-user-info{padding:6px 8px}.pc-mini-avatar{width:20px;height:20px}.pc-user-details{gap:6px}.pc-handle{font-size:11px}.pc-status{font-size:8px}.pc-contact-btn{padding:4px 8px;font-size:9px;border-radius:50px}}@media (prefers-reduced-motion: reduce){.pc-card,.pc-shine{animation:none}}.tech-text{position:relative;width:100%;height:100%;touch-action:pan-y;-webkit-user-select:none;user-select:none}.tech-text-canvas{display:block;width:100%;height:100%}.folder{--folder-color: #000000;--folder-back-color: #262626;--paper-1: #e6e6e6;--paper-2: #f2f2f2;--paper-3: #ffffff;transition:all .2s ease-in;cursor:pointer}.folder:not(.folder--click):hover{transform:translateY(-8px)}.folder:not(.folder--click):hover .paper{transform:translate(-50%)}.folder:not(.folder--click):hover .folder__front{transform:skew(15deg) scaleY(.6)}.folder:not(.folder--click):hover .right{transform:skew(-15deg) scaleY(.6)}.folder.open{transform:translateY(-8px)}.folder.open .paper:nth-child(1){transform:translate(calc(-120% + var(--magnet-x, 0px)),calc(-70% + var(--magnet-y, 0px))) rotate(-15deg)}.folder.open .paper:nth-child(1):hover{transform:translate(calc(-120% + var(--magnet-x, 0px)),calc(-70% + var(--magnet-y, 0px))) rotate(-15deg) scale(1.1)}.folder.open .paper:nth-child(2){transform:translate(calc(10% + var(--magnet-x, 0px)),calc(-70% + var(--magnet-y, 0px))) rotate(15deg);height:80%}.folder.open .paper:nth-child(2):hover{transform:translate(calc(10% + var(--magnet-x, 0px)),calc(-70% + var(--magnet-y, 0px))) rotate(15deg) scale(1.1)}.folder.open .paper:nth-child(3){transform:translate(calc(-50% + var(--magnet-x, 0px)),calc(-100% + var(--magnet-y, 0px))) rotate(5deg);height:80%}.folder.open .paper:nth-child(3):hover{transform:translate(calc(-50% + var(--magnet-x, 0px)),calc(-100% + var(--magnet-y, 0px))) rotate(5deg) scale(1.1)}.folder.open .folder__front{transform:skew(15deg) scaleY(.6)}.folder.open .right{transform:skew(-15deg) scaleY(.6)}.folder__back{position:relative;width:100px;height:80px;background:var(--folder-back-color);border-radius:0 10px 10px}.folder__back:after{position:absolute;z-index:0;bottom:98%;left:0;content:"";width:30px;height:10px;background:var(--folder-back-color);border-radius:5px 5px 0 0}.folder .paper{position:absolute;z-index:2;bottom:10%;left:50%;transform:translate(-50%,10%);width:70%;height:80%;background:var(--paper-1);border-radius:10px;transition:all .3s ease-in-out;display:grid;place-items:center;font-size:20px;color:#0a0a0a;overflow:hidden}.folder .paper:nth-child(2){background:var(--paper-2);width:80%;height:70%}.folder .paper:nth-child(3){background:var(--paper-3);width:90%;height:60%}.folder__front{position:absolute;z-index:3;width:100%;height:100%;background:var(--folder-color);border-radius:5px 10px 10px;transform-origin:bottom;transition:all .3s ease-in-out}.folder:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:10px}@media (prefers-reduced-motion: reduce){.folder,.folder .paper,.folder__front{transition:none}.folder:not(.folder--click):hover{transform:none}}:root{--maroon: #000000;--maroon-dark: #000000;--maroon-deep: #000000;--maroon-light: #404040;--gold: #a3a3a3;--gold-light: #ffffff;--cream: #ffffff;--ivory: #ffffff;--charcoal: #0a0a0a;--muted: #737373;--line: #e5e5e5;--card: #ffffff;--radius: 16px}body{margin:0}main{overflow-x:clip;position:relative}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:radial-gradient(1100px 500px at 85% -5%,rgba(0,0,0,.1),transparent 60%),radial-gradient(900px 480px at 8% 12%,rgba(0,0,0,.06),transparent 60%),repeating-linear-gradient(45deg,rgba(0,0,0,.035) 0 1px,transparent 1px 26px),repeating-linear-gradient(-45deg,rgba(0,0,0,.035) 0 1px,transparent 1px 26px)}#root{position:relative;z-index:1}.container{max-width:1100px;margin:0 auto;padding:0 24px}section{scroll-margin-top:80px}.nav{position:fixed;top:0;left:0;right:0;z-index:50;transition:all .3s ease;padding:14px 0;background:#0a0a0ae0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #262626}.nav-scrolled{background:#000000f5;box-shadow:0 4px 24px #0000008c}.nav-inner{max-width:1100px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;color:#fff}.logo-img{width:60px;height:45px;display:block;object-fit:contain}.logo-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;color:#fff;font-size:19px;background:linear-gradient(135deg,var(--maroon-dark),var(--maroon));border:1px solid var(--gold)}.nav-links{display:flex;gap:22px;align-items:center}.nav-links a{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:#e8e8e8;font-weight:600;transition:color .2s}.nav-links a:hover{color:#fff}.nav .btn-small{background:#fff;color:#000!important;border:1px solid #ffffff}.nav-toggle{display:none;border:1px solid #404040;border-radius:10px;padding:6px 10px;font-size:18px;color:#fff;background:#111}.nav-actions{display:flex;align-items:center;gap:10px}.theme-toggle{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--gold);background:linear-gradient(135deg,var(--maroon-dark),var(--maroon));color:var(--gold-light);font-size:16px;cursor:pointer;transition:transform .2s ease}.theme-toggle:hover{transform:rotate(15deg) scale(1.06)}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:999px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;font-size:15px}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--maroon-dark),var(--maroon));color:#fff;border:1px solid var(--maroon-dark);box-shadow:0 8px 24px #00000047}.btn-primary:hover{background:linear-gradient(135deg,var(--maroon),var(--maroon-light))}.btn-ghost{border:1px solid var(--maroon);color:var(--maroon-dark);background:#fff}.btn-ghost:hover{background:var(--cream)}.btn-small{padding:8px 18px;background:var(--maroon-dark);color:#fff!important;border:1px solid var(--maroon-dark)}.hero{position:relative;padding:140px 0 80px;background:radial-gradient(700px 340px at 82% 18%,rgba(0,0,0,.22),transparent 65%),radial-gradient(620px 380px at 12% 20%,rgba(0,0,0,.1),transparent 60%),linear-gradient(180deg,#f5f5f5,var(--cream),#ffffff);overflow:hidden;border-bottom:1px solid var(--line)}.hero-wire{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:repeating-linear-gradient(45deg,rgba(0,0,0,.05) 0 1px,transparent 1px 24px),repeating-linear-gradient(-45deg,rgba(0,0,0,.05) 0 1px,transparent 1px 24px);-webkit-mask-image:radial-gradient(80% 90% at 50% 30%,black 55%,transparent 100%);mask-image:radial-gradient(80% 90% at 50% 30%,black 55%,transparent 100%)}.hero:before{content:"";position:absolute;top:0;left:0;right:0;height:90px;background:linear-gradient(to bottom,rgba(0,0,0,.16),transparent 100%);filter:blur(14px);pointer-events:none}.blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.28;animation:float 9s ease-in-out infinite}.blob-1{width:340px;height:340px;background:#d4d4d4;top:-80px;left:-80px}.blob-2{width:300px;height:300px;background:#e5e5e5;top:40px;right:-60px;animation-delay:2s;opacity:.35}.blob-3{width:260px;height:260px;background:#a3a3a3;bottom:-60px;left:40%;animation-delay:4s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.hero-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:40px;align-items:center;position:relative}.pill{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--maroon);padding:8px 16px;border-radius:999px;font-size:14px;font-weight:600;color:var(--maroon-dark);box-shadow:0 4px 14px #00000014}.hero h1{font-size:52px;margin:18px 0 6px;color:var(--maroon-deep);line-height:1.05}.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}.hero-name{margin:18px 0 6px;font-family:inherit;font-weight:700}.hero-name-line{height:clamp(72px,11vw,118px)}.hero-name-line+.hero-name-line{margin-top:-8px}.accent-text{color:var(--maroon)}.hero h2{font-size:21px;color:#404040;margin:0 0 16px;font-weight:600}.lead{font-size:17px;line-height:1.65;color:#525252}.hero-actions{display:flex;gap:14px;margin-top:26px;flex-wrap:wrap}.hero-meta{display:flex;gap:18px;margin-top:22px;color:var(--muted);flex-wrap:wrap;font-size:14px}.hero-meta span{display:inline-flex;align-items:center;gap:7px}.hero-card{background:#fff;border-radius:var(--radius);padding:32px 26px;text-align:center;box-shadow:0 18px 50px #00000024;border:1px solid var(--line);border-top:5px solid var(--maroon);transition:transform .3s}.hero-card:hover{transform:translateY(-4px)}.profile-card{width:min(280px,100%);aspect-ratio:280 / 420;border-radius:24px;overflow:hidden;background:#222;border:1px solid rgba(255,255,255,.2);box-shadow:0 20px 40px #00000040,0 5px 15px #00000026;position:relative}.profile-card-image{width:100%;height:100%;object-fit:cover;display:block;position:absolute;top:0;right:0;bottom:0;left:0}.profile-card-bottom{width:100%;height:35%;background:#222;position:absolute;left:0;right:0;bottom:0}.profile-card-bottom:before{content:"";position:absolute;top:-60px;left:0;right:0;height:60px;background:linear-gradient(to bottom,transparent,#222);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);pointer-events:none}.profile-card-name{margin:14px 0 4px;color:#fff;font-size:19px;text-align:center;position:relative;z-index:1}.profile-card-title{margin:0;color:#bdbdbd;font-size:11.5px;line-height:1.4;text-align:center;padding:0 16px;position:relative;z-index:1}.profile-card-stats{display:flex;justify-content:center;gap:20px;margin-top:12px;padding:12px 16px 0;border-top:1px solid rgba(255,255,255,.14);margin-left:16px;margin-right:16px;position:relative;z-index:1}.profile-card-stats div{display:flex;flex-direction:column;align-items:center;gap:2px}.profile-card-stats strong{font-size:15px;color:#fff}.profile-card-stats span{font-size:10.5px;color:#9e9e9e}.profile-clickable{cursor:pointer;transition:transform .3s ease,box-shadow .3s ease}.profile-clickable:hover,.profile-clickable:focus-visible{transform:translateY(-6px);box-shadow:0 28px 56px #00000052,0 8px 20px #0000002e;outline:2px solid #fff;outline-offset:3px}.profile-clickable:hover .profile-card-image{transform:scale(1.04)}.profile-card-image{transition:transform .4s ease}.profile-hover-hint{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:#0000008c;color:#fff;font-size:12px;font-weight:600;border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;transform:translateY(-6px);transition:opacity .25s ease,transform .25s ease;pointer-events:none;z-index:2}.profile-clickable:hover .profile-hover-hint,.profile-clickable:focus-visible .profile-hover-hint{opacity:1;transform:translateY(0)}.avatar{width:88px;height:88px;margin:0 auto 14px;display:grid;place-items:center;font-size:30px;font-weight:800;color:#fff;border-radius:22px;background:linear-gradient(135deg,var(--maroon-dark),var(--maroon));border:2px solid var(--gold-light)}.avatar-img{width:200px;height:250px;margin:0 auto 14px;display:block;object-fit:cover;object-position:top center;border-radius:120px 120px 18px 18px;border:2px solid #000000;outline:none;box-shadow:0 16px 32px #00000038;filter:grayscale(100%) contrast(1.05);background:#fff;padding:6px}.avatar-button{background:none;border:none;padding:0;cursor:zoom-in;display:block;margin:0 auto}.avatar-button:hover .avatar-img{transform:translateY(-4px);box-shadow:0 22px 44px #00000047}.avatar-img{transition:transform .25s ease,box-shadow .25s ease}.avatar-button:hover .avatar-img{filter:none}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000e0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px;cursor:zoom-out;animation:lightboxIn .25s ease}@keyframes lightboxIn{0%{opacity:0}to{opacity:1}}.lightbox-img{max-width:min(92vw,900px);max-height:82vh;width:auto;height:auto;border-radius:14px;border:3px solid var(--gold);box-shadow:0 30px 80px #00000080;background:#fff;cursor:default}.lightbox-close{position:absolute;top:20px;right:22px;width:44px;height:44px;border-radius:50%;border:1px solid var(--gold);background:#fff;color:var(--maroon-dark);font-size:18px;display:grid;place-items:center;cursor:pointer}.lightbox-close:hover{background:var(--gold-light)}.lightbox-caption{color:#e5e5e5;font-size:13px;margin-top:14px}.hero-card h3{margin:8px 0 4px;color:var(--maroon-deep)}.hero-card p{margin:0;color:var(--muted);font-size:14px}.mini-stats{display:flex;justify-content:space-around;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.mini-stats div{display:flex;flex-direction:column;gap:2px}.mini-stats strong{font-size:22px;color:var(--maroon-dark)}.mini-stats span{font-size:13px;color:var(--muted)}.section{padding:84px 0;background-color:#fff;background-image:repeating-linear-gradient(45deg,rgba(0,0,0,.022) 0 1px,transparent 1px 26px),repeating-linear-gradient(-45deg,rgba(0,0,0,.022) 0 1px,transparent 1px 26px);position:relative}.section-alt{background-color:var(--cream);background-image:radial-gradient(800px 300px at 50% 0%,rgba(0,0,0,.1),transparent 65%),repeating-linear-gradient(45deg,rgba(0,0,0,.032) 0 1px,transparent 1px 26px),repeating-linear-gradient(-45deg,rgba(0,0,0,.032) 0 1px,transparent 1px 26px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:relative}.hero-grid,.section .container,.footer-inner{position:relative;z-index:1}#about.hero{background:radial-gradient(700px 340px at 82% 18%,rgba(255,255,255,.08),transparent 65%),radial-gradient(620px 380px at 12% 20%,rgba(255,255,255,.06),transparent 60%),linear-gradient(180deg,#0a0a0a,#000 70%,#000);border-bottom:1px solid #262626}#about.hero h1,#about.hero .accent-text{color:#fff}#about.hero h2,#about.hero .lead{color:#d4d4d4}#about.hero .hero-meta{color:#a3a3a3}#projects .section-tag,#contact .section-tag{background:#fff;color:#000}#projects.section-alt,#contact.section-alt{background-color:#0a0a0a;background-image:radial-gradient(800px 300px at 50% 0%,rgba(255,255,255,.06),transparent 65%),repeating-linear-gradient(45deg,rgba(255,255,255,.025) 0 1px,transparent 1px 26px),repeating-linear-gradient(-45deg,rgba(255,255,255,.025) 0 1px,transparent 1px 26px);border-top:1px solid #262626;border-bottom:1px solid #262626}#projects .section-title,#contact .section-title{color:#fff}#projects .section-sub,#contact .section-sub{color:#a3a3a3}.section-tag{display:inline-flex;align-items:center;gap:7px;padding:6px 14px;border-radius:999px;background:var(--maroon-dark);color:var(--gold-light);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px}.section-title{font-size:36px;color:var(--maroon-deep);margin:14px 0 8px}.section-sub{color:var(--muted);font-size:16px;max-width:640px;line-height:1.6}.skills-marquee{display:flex;flex-direction:column;gap:16px;margin-top:32px}.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.marquee-track{display:flex;width:max-content;animation:marquee 32s linear infinite}.marquee-track.reverse{animation-direction:reverse}.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}.marquee-track>.skill-card{flex:0 0 240px;margin-right:16px}@keyframes marquee{to{transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){.marquee{overflow:visible;-webkit-mask-image:none;mask-image:none}.marquee-track{animation:none;flex-wrap:wrap;width:auto;gap:16px}.marquee-track>.skill-card{flex:1 1 220px;margin-right:0}}.skill-card{background:var(--card);border-radius:var(--radius);padding:20px;box-shadow:0 6px 22px #00000012;border:1px solid var(--line);transition:transform .25s,box-shadow .25s}.skill-card:hover{transform:translateY(-5px);box-shadow:0 14px 34px #00000024;border-color:var(--maroon)}.skill-top{display:flex;align-items:center;gap:12px;margin-bottom:14px}.skill-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;font-size:20px;color:#fff;background:linear-gradient(135deg,var(--maroon-dark),var(--maroon));border:1px solid rgba(0,0,0,.5);flex-shrink:0}.skill-top strong{color:var(--charcoal);font-size:15px}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-top:32px}.project-card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 28px #00000014;border:1px solid var(--line);transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}.project-card:hover{transform:translateY(-6px);box-shadow:0 18px 44px #00000029}.project-cover{height:100px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#000,#262626 60%,#525252);border-bottom:3px solid #000000}.project-cover-icon{font-size:34px;color:#fffffff2;background:#ffffff24;width:64px;height:64px;display:grid;place-items:center;border-radius:16px;border:1px solid rgba(255,255,255,.6)}.project-body{padding:16px;display:flex;flex-direction:column;gap:12px;flex:1}.project-body h3{margin:0;color:var(--maroon-deep);font-size:16px;line-height:1.35}.project-body p{margin:0;color:#525252;line-height:1.6;font-size:13.5px}.stack{display:flex;flex-wrap:wrap;gap:8px}.stack-pill{background:#f5f5f5;color:var(--maroon-dark);border:1px solid var(--line);padding:5px 12px;border-radius:999px;font-size:12px;font-weight:700}.project-link{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--maroon);text-decoration:none;margin-top:auto;font-size:14px}.project-link:hover{text-decoration:underline}.project-link.muted{color:var(--muted)}.deck-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:24px}.deck-toggle{font-size:14px;padding:10px 20px}.deck-hint{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--muted)}.deck-stage.deck{position:relative;display:block;min-height:600px;margin-top:20px;padding:30px 10px 20px;perspective:1400px;cursor:pointer;overflow:visible}.deck-stage.deck .project-card{position:absolute;left:50%;top:50px;width:min(300px,80vw);height:460px;margin-left:calc(min(300px,80vw)/-2);transform-origin:50% 135%;transition:transform .9s cubic-bezier(.22,1,.36,1),box-shadow .5s ease;overflow:hidden;will-change:transform}.flip-stage.spread .project-card{will-change:transform;animation:cardSettle .9s cubic-bezier(.22,1,.36,1) backwards;animation-delay:calc(var(--i, 0) * 60ms)}@keyframes cardSettle{0%{opacity:.4;transform:translateY(26px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.deck-toggle:disabled{opacity:.65;cursor:wait}.deck-stage.deck .project-cover{height:110px;flex-shrink:0}.deck-stage.deck .project-body{padding:18px}.deck-stage.deck .project-body h3{font-size:16px}.deck-stage.deck .project-body p{font-size:13.5px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.deck-stage.deck .project-card:nth-child(1){transform:rotate(-2deg) translate(-5px,5px);z-index:1}.deck-stage.deck .project-card:nth-child(2){transform:rotate(-1deg) translate(-2px,2px);z-index:2}.deck-stage.deck .project-card:nth-child(3){transform:rotate(0);z-index:5}.deck-stage.deck .project-card:nth-child(4){transform:rotate(1deg) translate(2px,2px);z-index:3}.deck-stage.deck .project-card:nth-child(5){transform:rotate(2deg) translate(5px,5px);z-index:4}.deck-stage.deck:hover .project-card:nth-child(1),.deck-stage.deck:active .project-card:nth-child(1){transform:rotate(-30deg) translateY(-8px);box-shadow:0 22px 50px #00000038}.deck-stage.deck:hover .project-card:nth-child(2),.deck-stage.deck:active .project-card:nth-child(2){transform:rotate(-15deg) translateY(-16px);box-shadow:0 22px 50px #00000038}.deck-stage.deck:hover .project-card:nth-child(3),.deck-stage.deck:active .project-card:nth-child(3){transform:rotate(0) translateY(-24px);box-shadow:0 26px 56px #00000042}.deck-stage.deck:hover .project-card:nth-child(4),.deck-stage.deck:active .project-card:nth-child(4){transform:rotate(15deg) translateY(-16px);box-shadow:0 22px 50px #00000038}.deck-stage.deck:hover .project-card:nth-child(5),.deck-stage.deck:active .project-card:nth-child(5){transform:rotate(30deg) translateY(-8px);box-shadow:0 22px 50px #00000038}.deck-stage.deck .project-card:hover{z-index:10}.deck-stage.deck .project-card:nth-child(1):hover{transform:rotate(-26deg) translateY(-26px)}.deck-stage.deck .project-card:nth-child(2):hover{transform:rotate(-12deg) translateY(-32px)}.deck-stage.deck .project-card:nth-child(3):hover{transform:rotate(0) translateY(-38px)}.deck-stage.deck .project-card:nth-child(4):hover{transform:rotate(12deg) translateY(-32px)}.deck-stage.deck .project-card:nth-child(5):hover{transform:rotate(26deg) translateY(-26px)}@media (max-width: 900px){.deck-stage.deck{min-height:590px}.deck-stage.deck .project-card{width:min(260px,76vw);margin-left:calc(min(260px,76vw)/-2);height:450px}}.edu-card{display:flex;gap:20px;background:#fff;border-radius:var(--radius);padding:28px;margin-top:28px;box-shadow:0 8px 28px #00000014;border:1px solid var(--line);border-left:5px solid var(--maroon)}.edu-icon-box{width:56px;height:56px;flex-shrink:0;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,var(--maroon-dark),var(--maroon));color:var(--gold-light);font-size:24px}.edu-card h3{margin:0;color:var(--maroon-deep)}.edu-school{color:var(--maroon);font-weight:700;margin:6px 0}.edu-details{color:var(--muted);margin:0;line-height:1.6}.contact-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:28px}.contact-card{background:#fff;padding:18px;border-radius:var(--radius);text-decoration:none;color:var(--charcoal);box-shadow:0 6px 22px #00000012;border:1px solid var(--line);transition:transform .25s,border-color .25s;display:flex;flex-direction:column;gap:6px;word-break:break-word}.contact-card:hover{transform:translateY(-4px);border-color:var(--maroon)}.contact-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:20px;color:#fff;background:linear-gradient(135deg,var(--maroon-dark),var(--maroon))}.contact-card strong{font-size:15px}.contact-card small{color:var(--muted);font-size:13px}.contact-actions{display:flex;gap:14px;margin-top:26px;flex-wrap:wrap}.resume-note{color:var(--muted);font-size:13px;margin-top:16px}.contact-card-static{cursor:default}.contact-card-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:8px}.contact-card-actions a{color:var(--maroon);font-weight:700;font-size:13px}.copy-email-btn{border:1px solid var(--maroon);background:#fff;color:var(--maroon-dark);border-radius:999px;padding:6px 14px;font-size:12px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.copy-email-btn:hover{background:var(--maroon-dark);color:#fff}.contact-form{margin-top:30px;background:#fff;border:1px solid var(--line);border-top:5px solid var(--maroon);border-radius:var(--radius);padding:26px;box-shadow:0 8px 28px #00000014;display:flex;flex-direction:column;gap:14px;max-width:640px}.contact-form h3{margin:0;color:var(--maroon-deep);font-size:20px}.contact-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600;color:var(--charcoal)}.contact-form input[type=text],.contact-form input[type=email],.contact-form textarea{padding:11px 14px;border-radius:10px;border:1px solid var(--line);font-size:14px;font-family:Inter,system-ui,sans-serif;background:var(--cream);color:var(--charcoal)}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--maroon);border-color:var(--maroon);background:#fff}.contact-form textarea{resize:vertical}.contact-form .btn{align-self:flex-start}.contact-form .btn:disabled{opacity:.65;cursor:wait}.form-note{display:flex;align-items:center;gap:8px;font-size:14px;margin:4px 0 0}.form-success{color:#000}.form-error{color:var(--maroon)}.footer{padding:26px 0;background:#000;color:#fff;border-top:3px solid #000000}.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;font-size:14px}.footer a{display:inline-flex;align-items:center;gap:6px;color:var(--gold-light);text-decoration:none;font-weight:600}.oatmeal-fab{position:fixed;right:22px;bottom:22px;z-index:90;width:62px;height:62px;display:grid;place-items:center;border-radius:50%;border:2px solid var(--gold);background:linear-gradient(135deg,var(--maroon-dark),var(--maroon));color:#fff;font-size:24px;cursor:pointer;box-shadow:0 14px 36px #00000059;transition:transform .2s ease;padding:0}.oatmeal-fab:hover{transform:translateY(-3px)}.oatmeal-fab.hidden{display:none}.oatmeal-fab.ringing:after{content:"";position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;border-radius:50%;border:2px solid var(--gold);animation:oatmealRing 1.8s ease-out infinite;pointer-events:none}.oatmeal-fab.ringing:before{content:"";position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;border-radius:50%;border:2px solid var(--gold);animation:oatmealRing 1.8s ease-out .9s infinite;pointer-events:none}@keyframes oatmealRing{0%{transform:scale(.85);opacity:.9}70%{transform:scale(1.3);opacity:0}to{transform:scale(1.3);opacity:0}}.oatmeal-panel{position:fixed;right:22px;bottom:22px;z-index:95;width:min(370px,calc(100vw - 32px));height:min(540px,calc(100vh - 120px));display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-top:5px solid var(--maroon);border-radius:18px;box-shadow:0 30px 70px #00000059;overflow:hidden;animation:oatmealIn .25s ease}@keyframes oatmealIn{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.oatmeal-header{display:flex;align-items:center;gap:10px;padding:14px;background:linear-gradient(135deg,var(--maroon-deep),var(--maroon));color:#fff}.oatmeal-header div{display:flex;flex-direction:column;line-height:1.2}.oatmeal-header small{color:var(--gold-light);font-size:12px}.oatmeal-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#ffffff26;border:1px solid var(--gold);font-size:18px}.oatmeal-close{margin-left:auto;width:34px;height:34px;border-radius:50%;border:1px solid var(--gold);background:transparent;color:#fff;cursor:pointer;display:grid;place-items:center}.oatmeal-close:hover{background:#ffffff26}.oatmeal-loadbar{position:relative;height:26px;background:#f5f5f5;border-bottom:1px solid var(--line);overflow:hidden}.oatmeal-loadbar-fill{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,var(--maroon-dark),var(--maroon-light));transition:width .3s ease}.oatmeal-loadbar small{position:relative;display:block;text-align:center;line-height:26px;font-size:11px;font-weight:600;color:var(--maroon-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 10px}.oatmeal-body{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--cream)}.oatmeal-msg{max-width:85%;padding:10px 14px;border-radius:14px;font-size:14px;line-height:1.55;font-family:Inter,system-ui,sans-serif}.oatmeal-msg.oatmeal{align-self:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--maroon);color:var(--charcoal)}.oatmeal-msg.you{align-self:flex-end;background:linear-gradient(135deg,var(--maroon-dark),var(--maroon));color:#fff}.oatmeal-msg.typing{font-style:italic;color:var(--muted)}.oatmeal-thinking{display:inline-flex;align-items:center;gap:6px;padding:14px 18px!important}.oatmeal-dot{width:8px;height:8px;border-radius:50%;background:var(--maroon);animation:oatmealBounce 1.2s ease-in-out infinite}.oatmeal-dot:nth-child(2){animation-delay:.15s;background:var(--maroon-light)}.oatmeal-dot:nth-child(3){animation-delay:.3s;background:var(--gold)}@keyframes oatmealBounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-6px);opacity:1}}.oatmeal-chips{display:flex;gap:8px;padding:10px 12px 0;overflow-x:auto;background:var(--cream)}.oatmeal-chips button{flex-shrink:0;padding:7px 13px;border-radius:999px;border:1px solid var(--maroon);background:#fff;color:var(--maroon-dark);font-size:12px;font-weight:600;cursor:pointer}.oatmeal-chips button:hover:not(:disabled){background:var(--maroon-dark);color:#fff}.oatmeal-chips button:disabled{opacity:.55;cursor:wait}.oatmeal-input{display:flex;gap:8px;padding:12px;background:#fff;border-top:1px solid var(--line)}.oatmeal-input input{flex:1;padding:11px 14px;border-radius:999px;border:1px solid var(--line);font-size:14px;font-family:Inter,system-ui,sans-serif}.oatmeal-input input:focus{outline:2px solid var(--maroon);border-color:var(--maroon)}.oatmeal-input button{width:42px;height:42px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--maroon-dark),var(--maroon));color:#fff;cursor:pointer;display:grid;place-items:center}.oatmeal-input button:disabled{opacity:.5;cursor:default}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal.visible{opacity:1;transform:translateY(0)}@media (max-width: 1000px){.contact-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media (max-width: 800px){.hero{padding:112px 0 60px}.section{padding:64px 0}.hero-grid{grid-template-columns:1fr;gap:32px}.hero h1{font-size:36px}.section-title{font-size:28px}.profile-card{margin-inline:auto}.theme-toggle{width:44px;height:44px}.nav-toggle{min-width:44px;min-height:44px}.nav-links{display:none;position:absolute;top:62px;right:16px;background:#0a0a0a;flex-direction:column;align-items:stretch;padding:16px;border-radius:14px;border:1px solid #333333;box-shadow:0 16px 40px #0000008c;min-width:200px}.nav-links.open{display:flex}.nav-toggle{display:block}.edu-card>div{min-width:0}}@media (max-width: 520px){html,body{overflow-x:clip}.container{padding:0 20px}.hero{padding:104px 0 52px}.section{padding:56px 0}.hero h1{font-size:32px}.hero h2{font-size:18px}.lead{font-size:16px}.section-title{font-size:26px}.section-sub{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{justify-content:center}.hero-meta{gap:10px;font-size:13px}.edu-card{padding:22px 20px;gap:14px}.contact-form{padding:22px 18px}.projects-grid{grid-template-columns:1fr}.marquee-track>.skill-card{flex-basis:200px}.contact-grid{grid-template-columns:1fr}.footer-inner{flex-direction:column;align-items:flex-start}.oatmeal-fab{right:14px;bottom:14px}.oatmeal-panel{right:12px;bottom:12px}.lightbox{padding:20px 12px}}.intro-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:#000;cursor:pointer;transition:opacity .45s ease}.intro-overlay.fading{opacity:0;pointer-events:none}.intro-video{width:min(1100px,96vw);max-height:86vh;object-fit:contain;mix-blend-mode:screen;-webkit-mask-image:radial-gradient(ellipse 68% 68% at 50% 50%,black 60%,transparent 78%);mask-image:radial-gradient(ellipse 68% 68% at 50% 50%,black 60%,transparent 78%);opacity:0;transition:opacity .35s ease}.intro-video.ready{opacity:1}.intro-skip{color:#a3a3a3;font-size:13px;letter-spacing:.4px}body.dark-mode{--cream: #000000;--card: #111111;--charcoal: #ffffff;--muted: #a3a3a3;--line: #262626}body.dark-mode .nav{background:#000000e0;border-bottom-color:var(--line)}body.dark-mode .nav-scrolled{background:#000000f7;box-shadow:0 4px 24px #00000073}body.dark-mode .logo{color:var(--gold-light)}body.dark-mode .nav-links a{color:var(--charcoal)}body.dark-mode .nav-links a:hover{color:var(--gold-light)}body.dark-mode .nav-toggle{background:var(--card);color:var(--gold-light);border-color:var(--line)}body.dark-mode .nav-links.open{background:var(--card);border-color:var(--line)}body.dark-mode .hero{background:radial-gradient(700px 340px at 82% 18%,rgba(255,255,255,.08),transparent 65%),radial-gradient(620px 380px at 12% 20%,rgba(255,255,255,.06),transparent 60%),linear-gradient(180deg,#0a0a0a,#000 70%,#000);border-bottom-color:var(--line)}body.dark-mode .hero h1{color:#fff}body.dark-mode .accent-text{color:var(--gold-light)}body.dark-mode .hero h2,body.dark-mode .lead{color:#d4d4d4}body.dark-mode .pill{background:var(--card);border-color:var(--line);color:var(--gold-light);box-shadow:0 4px 14px #0006}body.dark-mode .hero-card{background:var(--card);border-color:var(--line);box-shadow:0 18px 50px #00000080}body.dark-mode .hero-card h3{color:#fff}body.dark-mode .btn-ghost{background:transparent;color:var(--gold-light);border-color:var(--gold)}body.dark-mode .btn-ghost:hover{background:#ffffff1f}body.dark-mode .btn-small{background:#fff;border-color:#fff;color:#000!important}body.dark-mode .section{background-color:#000}body.dark-mode .section-alt{background-color:#0a0a0a}body.dark-mode .section-title{color:#fff}body.dark-mode .skill-card{background:var(--card);border-color:var(--line);box-shadow:0 6px 22px #0006}body.dark-mode .project-card{background:var(--card);border-color:var(--line);box-shadow:0 8px 28px #00000073}body.dark-mode .project-body h3{color:#fff}body.dark-mode .project-body p{color:#d4d4d4}body.dark-mode .stack-pill{background:#262626;color:var(--gold-light);border-color:#404040}body.dark-mode .project-link{color:var(--gold-light)}body.dark-mode .project-link.muted{color:var(--muted)}body.dark-mode .edu-card{background:var(--card);border-color:var(--line);box-shadow:0 8px 28px #00000073}body.dark-mode .edu-card h3{color:#fff}body.dark-mode .edu-school{color:var(--gold-light)}body.dark-mode .contact-card{background:var(--card);border-color:var(--line);box-shadow:0 6px 22px #0006}body.dark-mode .contact-card-actions a{color:var(--gold-light)}body.dark-mode .copy-email-btn{background:transparent;color:var(--gold-light);border-color:var(--gold)}body.dark-mode .copy-email-btn:hover{background:#fff;color:#000}body.dark-mode .contact-form{background:var(--card);border-color:var(--line);box-shadow:0 8px 28px #00000073}body.dark-mode .contact-form h3{color:#fff}body.dark-mode .contact-form input[type=text],body.dark-mode .contact-form input[type=email],body.dark-mode .contact-form textarea{background:#000;border-color:var(--line);color:var(--charcoal)}body.dark-mode .contact-form input:focus,body.dark-mode .contact-form textarea:focus{background:#111}body.dark-mode .form-success{color:#fff}body.dark-mode .oatmeal-panel{background:var(--card);border-color:var(--line)}body.dark-mode .oatmeal-body{background:#000}body.dark-mode .oatmeal-msg.oatmeal{background:#1a1a1a;border-color:var(--line);color:var(--charcoal)}body.dark-mode .oatmeal-chips{background:#000}body.dark-mode .oatmeal-chips button{background:#1a1a1a;color:var(--gold-light);border-color:var(--gold)}body.dark-mode .oatmeal-input{background:var(--card);border-top-color:var(--line)}body.dark-mode .oatmeal-input input{background:#000;border-color:var(--line);color:var(--charcoal)}body.dark-mode .oatmeal-loadbar{background:#262626;border-bottom-color:var(--line)}body.dark-mode .oatmeal-loadbar small{color:var(--gold-light)}body.dark-mode .oatmeal-dot{background:var(--gold-light)}body.dark-mode .footer{background:#000}body.dark-mode #about.hero{background:radial-gradient(700px 340px at 82% 18%,rgba(0,0,0,.08),transparent 65%),radial-gradient(620px 380px at 12% 20%,rgba(0,0,0,.06),transparent 60%),linear-gradient(180deg,#f5f5f5,#fff 70%,#fff);border-bottom-color:#e5e5e5}body.dark-mode #about.hero h1,body.dark-mode #about.hero .accent-text{color:#000}body.dark-mode #about.hero h2{color:#404040}body.dark-mode #about.hero .lead{color:#525252}body.dark-mode #about.hero .hero-meta{color:#737373}body.dark-mode #about.hero .btn-ghost{color:#000;border-color:#000;background:#fff}body.dark-mode #about.hero .btn-ghost:hover{background:#eee}body.dark-mode #projects.section-alt,body.dark-mode #contact.section-alt{background-color:#fff;background-image:radial-gradient(800px 300px at 50% 0%,rgba(0,0,0,.06),transparent 65%),repeating-linear-gradient(45deg,rgba(0,0,0,.025) 0 1px,transparent 1px 26px),repeating-linear-gradient(-45deg,rgba(0,0,0,.025) 0 1px,transparent 1px 26px);border-top-color:#e5e5e5;border-bottom-color:#e5e5e5}body.dark-mode #projects .section-title,body.dark-mode #contact .section-title{color:#000}body.dark-mode #projects .section-sub,body.dark-mode #contact .section-sub{color:#737373}body.dark-mode #projects .project-card{background:#fff;border-color:#e5e5e5;box-shadow:0 8px 28px #00000014}body.dark-mode #projects .project-body h3{color:#000}body.dark-mode #projects .project-body p{color:#525252}body.dark-mode #projects .stack-pill{background:#f5f5f5;color:#000;border-color:#e5e5e5}body.dark-mode #projects .project-link{color:#000}body.dark-mode #projects .project-link.muted,body.dark-mode #projects .deck-hint{color:#525252}body.dark-mode #contact .contact-card{background:#fff;border-color:#e5e5e5;color:#0a0a0a;box-shadow:0 6px 22px #00000012}body.dark-mode #contact .contact-card small{color:#737373}body.dark-mode #contact .contact-card-actions a{color:#000}body.dark-mode #contact .copy-email-btn{color:#000;border-color:#000;background:#fff}body.dark-mode #contact .copy-email-btn:hover{background:#000;color:#fff}body.dark-mode #contact .contact-form{background:#fff;border-color:#e5e5e5;box-shadow:0 8px 28px #00000014}body.dark-mode #contact .contact-form h3{color:#000}body.dark-mode #contact .contact-form label{color:#0a0a0a}body.dark-mode #contact .contact-form input[type=text],body.dark-mode #contact .contact-form input[type=email],body.dark-mode #contact .contact-form textarea{background:#fff;border-color:#e5e5e5;color:#0a0a0a}.skip-link{position:absolute;left:16px;top:-48px;z-index:200;padding:10px 16px;border-radius:999px;background:#000;color:#fff;font-weight:700;text-decoration:none;transition:top .2s ease}.skip-link:focus-visible{top:12px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid currentColor;outline-offset:2px}.profile-card-trigger{display:block;width:100%;padding:0;border:0;background:none;font:inherit;color:inherit;text-align:inherit;cursor:zoom-in;border-radius:24px}.profile-card-trigger:focus-visible{outline:2px solid #ffffff;outline-offset:3px}.profile-card:hover .profile-card-image,.profile-card-trigger:hover .profile-card-image{transform:scale(1.04)}.profile-card:hover .profile-hover-hint,.profile-card-trigger:hover .profile-hover-hint,.profile-card-trigger:focus-visible .profile-hover-hint{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}#services{scroll-margin-top:0;background:#000}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.services-track{position:relative;height:560vh}.services-stage{position:sticky;top:9vh;height:82vh;height:82dvh;overflow:hidden;background:#000}.service-panel{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;will-change:transform;box-shadow:0 -24px 60px #00000047}.service-panel.tone-0{background:#000}.service-panel.tone-1{background:#1a1a1a}.service-panel.tone-2{background:#404040}.service-panel.tone-3{background:#737373}.service-panel.tone-4{background:#a3a3a3}.service-panel.tone-5{background:#e5e5e5}.service-panel.tone-6{background:#fff}.service-panel[data-theme=dark]{color:#fff}.service-panel[data-theme=light]{color:#0a0a0a}.service-panel-inner{width:100%;max-width:960px;margin:0 auto;padding:0 24px;transform:translateY(calc(var(--q, 0) * 70px))}.service-panel .rise{opacity:0;transform:translateY(34px);transition:opacity .45s ease,transform .45s cubic-bezier(.22,1,.36,1)}.service-panel.is-live .rise{opacity:1;transform:translateY(0)}.service-panel.is-live .service-panel-inner>:nth-child(1){transition-delay:0ms}.service-panel.is-live .service-panel-inner>:nth-child(2){transition-delay:50ms}.service-panel.is-live .service-panel-inner>:nth-child(3){transition-delay:90ms}.service-panel.is-live .service-panel-inner>:nth-child(4){transition-delay:.13s}.service-panel.is-live .service-panel-inner>:nth-child(5){transition-delay:.17s}.service-big-num{display:block;font-family:Playfair Display,Georgia,serif;font-weight:800;font-size:clamp(3.5rem,13vw,8rem);line-height:.9;color:transparent;margin-bottom:10px}.service-panel[data-theme=dark] .service-big-num{-webkit-text-stroke:2px rgba(255,255,255,.4)}.service-panel[data-theme=light] .service-big-num{-webkit-text-stroke:2px rgba(0,0,0,.3)}.service-eyebrow{margin:0 0 10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:3px;opacity:.65}.service-panel-title{margin:0 0 12px;font-size:clamp(1.8rem,4.6vw,3.2rem);line-height:1.02;letter-spacing:-.01em}.service-panel[data-theme=dark] .service-panel-title{color:#fff}.service-panel[data-theme=light] .service-panel-title{color:#0a0a0a}.service-panel-desc{margin:0;max-width:42ch;font-size:clamp(1rem,1.6vw,1.15rem);line-height:1.65;opacity:.85}.service-panel-tags{margin-top:18px}.service-panel[data-theme=dark] .stack-pill{background:#ffffff1a;color:#fff;border-color:#ffffff59}.services-kicker{position:absolute;z-index:20;top:84px;left:24px;margin:0;padding:8px 16px;border-radius:999px;background:#0a0a0a8c;border:1px solid rgba(140,140,140,.5);color:#fff;font-family:Orbitron,Inter,system-ui,sans-serif;font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase}.services-progress{position:absolute;z-index:20;left:50%;bottom:22px;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:8px 16px;border-radius:999px;background:#0a0a0a8c;border:1px solid rgba(140,140,140,.5);color:#fff;font-family:Orbitron,Inter,system-ui,sans-serif;font-size:12px;font-weight:600;letter-spacing:2px;white-space:nowrap}.services-dots{display:flex;align-items:center;gap:6px}.services-dot{width:6px;height:6px;border-radius:50%;background:#ffffff59;transition:background .3s ease,transform .3s ease}.services-dot.active{background:#fff;transform:scale(1.35)}.services-finale{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;display:flex;align-items:center;justify-content:center;background:#000;color:#fff;text-align:center}.services-finale-inner{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:700px;padding:0 24px}.services-finale-inner>*{opacity:0;transition:opacity .5s ease,transform .5s cubic-bezier(.22,1,.36,1)}.services-finale-inner>:nth-child(1){transform:translateY(12px)}.services-finale-inner>:nth-child(2){transform:translateY(28px);transition-duration:.9s}.services-finale-inner>:nth-child(3){transform:translate(-64px);transition-duration:.35s}.services-finale-inner>:nth-child(4){transform:translateY(16px)}.services-stage.finale-visible .services-finale-inner>*{opacity:1;transform:none}.services-stage.finale-visible .services-finale-inner>:nth-child(1){transition-delay:0ms}.services-stage.finale-visible .services-finale-inner>:nth-child(2){transition-delay:.1s}.services-stage.finale-visible .services-finale-inner>:nth-child(3){transition-delay:.25s}.services-stage.finale-visible .services-finale-inner>:nth-child(4){transition-delay:.45s}.services-finale h3{margin:0;font-family:Orbitron,Inter,system-ui,sans-serif;font-weight:800;letter-spacing:1px;font-size:clamp(2.2rem,5.5vw,3.75rem);line-height:1.12;color:#fff}.services-finale p{margin:0;color:#d4d4d4;font-size:clamp(1.1rem,2vw,1.4rem)}.services-kicker,.services-progress{transition:opacity .4s ease}.services-stage.finale-visible .services-kicker,.services-stage.finale-visible .services-progress{opacity:0}@media (max-width: 800px){.services-track{height:420vh}.services-stage{top:6vh;height:88vh;height:88dvh}.services-kicker{top:76px;left:20px}.service-panel-inner{padding:0 20px}}@media (prefers-reduced-motion: reduce){.services-track{height:auto}.services-stage{position:static;height:auto;overflow:visible}.service-panel{position:relative;min-height:70vh;box-shadow:none}.services-finale{position:relative;min-height:70vh}.service-panel .rise,.services-finale-inner>*{opacity:1;transform:none}.services-kicker,.services-progress{display:none}}.folder-hint{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--muted);margin-top:16px}.folders-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px;align-items:stretch}.folder-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;padding:28px 18px 24px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 28px #00000014;height:100%;min-height:380px}.folder-visual{min-height:150px;display:grid;place-items:center;padding:12px 12px 4px}.folder-open-btn{border:0;background:none;padding:24px 12px 8px;cursor:pointer;border-radius:12px;font:inherit;color:inherit}.folder-open-btn:focus-visible{outline:2px solid currentColor;outline-offset:4px}.folder-meta{display:flex;flex-direction:column;gap:6px;align-items:center;flex:1;width:100%}.folder-meta strong{font-size:17px;color:var(--charcoal);min-height:1.4em}.folder-meta small{font-size:13px;color:var(--muted);min-height:2.6em;display:flex;align-items:flex-start;justify-content:center}.folder-names{font-size:12.5px;color:var(--muted);line-height:1.5;max-width:26ch;min-height:3.75em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.folder-view-btn{margin-top:12px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;background:#0000008c;display:grid;place-items:center;padding:20px;animation:modalFade .25s ease}@keyframes modalFade{0%{opacity:0}to{opacity:1}}.modal-panel{animation:modalPop .32s cubic-bezier(.22,1,.36,1);transform-origin:center}@keyframes modalPop{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-detail-img{width:100%;aspect-ratio:16 / 10;object-fit:cover;object-position:center top;border-radius:12px;border:1px solid var(--line);display:block;background:#f5f5f5}.modal-panel{width:min(560px,100%);max-height:min(80vh,640px);overflow:auto;background:#fff;color:#0a0a0a;border-radius:18px;border:1px solid var(--line);box-shadow:0 30px 80px #00000059;padding:22px}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.modal-panel-wide{width:min(680px,100%)}.modal-gallery{margin:4px 0 16px}.modal-gallery .circular-gallery{height:320px;border-radius:12px;overflow:hidden;background:#0a0a0a;border:1px solid var(--line)}.modal-gallery-loading{height:320px;border-radius:12px;background:linear-gradient(135deg,#0a0a0a,#262626);border:1px solid var(--line)}.modal-gallery-hint{margin:8px 0 0;font-size:12.5px;color:#737373;text-align:center}.modal-title{margin:6px 0 0;font-size:20px;line-height:1.3;font-family:Playfair Display,Georgia,serif}.modal-sub{margin:6px 0 0;font-size:13.5px;color:#525252}.modal-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.modal-close{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);background:#f5f5f5;cursor:pointer;font-size:14px}.modal-close:hover{background:#000;color:#fff;border-color:#000}.modal-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.modal-list-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;padding:14px 16px;border-radius:12px;border:1px solid var(--line);background:#fafafa;cursor:pointer;font:inherit;color:inherit}.modal-list-item:hover{border-color:#000;background:#fff;transform:translateY(-1px)}.modal-list-text{display:flex;flex-direction:column;gap:4px}.modal-list-text strong{font-size:14.5px}.modal-list-text small{font-size:12.5px;color:#737373}.modal-list-cta{font-size:13px;font-weight:700;white-space:nowrap}.modal-detail{display:flex;flex-direction:column;gap:14px;margin-top:8px}.modal-desc{margin:0;font-size:14.5px;line-height:1.65;color:#404040}.install-note{background:#fafafa;border:1px solid var(--line);border-radius:12px;padding:14px 16px}.install-note strong{display:block;font-size:13.5px;margin-bottom:8px;color:#0a0a0a}.install-note ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:13.5px;line-height:1.6;color:#404040}.demo-note{background:#0a0a0a;border:1px solid #262626;border-radius:12px;padding:14px 16px}.demo-note strong{display:block;font-size:13.5px;margin-bottom:10px;color:#fff}.demo-creds{display:flex;flex-wrap:wrap;gap:8px}.demo-cred{display:flex;align-items:center;gap:8px;background:#171717;border:1px solid #2e2e2e;border-radius:9px;padding:7px 9px 7px 11px}.demo-cred small{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#a3a3a3}.demo-cred code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;font-weight:700;color:#6ee7b7;word-break:break-all}.demo-copy{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:0 0 auto;border:0;border-radius:6px;background:#262626;color:#d4d4d4;cursor:pointer;transition:background .15s ease,color .15s ease}.demo-copy:hover{background:#404040;color:#fff}.demo-copy:focus-visible{outline:2px solid #6ee7b7;outline-offset:2px}.demo-note-text{margin:10px 0 0;font-size:13px;line-height:1.6;color:#a3a3a3}body.dark-mode .folder-item{background:#fff;border-color:#e5e5e5}body.dark-mode .folder-meta strong{color:#000}body.dark-mode .folder-meta small,body.dark-mode .folder-names,body.dark-mode #projects .folder-hint{color:#525252}body.dark-mode .folder-open-btn:focus-visible,body.dark-mode .folder-view-btn:focus-visible,body.dark-mode .folder-visual:focus-within{outline-color:#000}@media (max-width: 900px){.folders-grid{grid-template-columns:1fr;max-width:420px;margin-left:auto;margin-right:auto}.folder-item{min-height:0}.modal-panel{padding:18px}.modal-gallery .circular-gallery,.modal-gallery-loading{height:240px}}@media (prefers-reduced-motion: reduce){.modal-backdrop,.modal-panel{animation:none}.modal-list-item:hover{transform:none}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:#fff;color:#0a0a0a}body.dark-mode{background:#000;color:#fff;color-scheme:dark}#root{min-height:100vh;background:#fff}body.dark-mode #root{background:#000}h1,h2,.section-title,.hero h1,.hero h2,.project-body h3,.edu-card h3,.hero-card h3{font-family:Playfair Display,Georgia,serif;letter-spacing:-.01em}
