:root{--color-bg: #1a1714;--color-bg-alt: #242019;--color-surface: #2d2821;--color-text: #f5f0e8;--color-text-muted: #a89f94;--color-accent: #e8d5b7;--color-accent-alt: #c4b5a0;--color-highlight: #d4a574;--font-display: "Playfair Display", Georgia, serif;--font-body: "Inter", -apple-system, sans-serif;--font-mono: "Space Mono", monospace;--space-xs: .5rem;--space-sm: 1rem;--space-md: 2rem;--space-lg: 4rem;--space-xl: 8rem;--space-2xl: 12rem;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quint: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--nav-height: 80px;--container-max: 1600px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);line-height:1.6;overflow-x:hidden;cursor:none}a{color:inherit;text-decoration:none;cursor:none}button{border:none;background:none;font:inherit;color:inherit;cursor:none}img{max-width:100%;display:block}::selection{background:var(--color-accent);color:var(--color-bg)}.cursor{position:fixed;top:0;left:0;pointer-events:none;z-index:10000;mix-blend-mode:difference}.cursor-dot{position:absolute;width:8px;height:8px;background:var(--color-text);border-radius:50%;transform:translate(-50%,-50%);transition:transform .15s var(--ease-out-expo)}.cursor-circle{position:absolute;width:40px;height:40px;border:1px solid var(--color-text);border-radius:50%;transform:translate(-50%,-50%);transition:all .3s var(--ease-out-expo);opacity:.5}.cursor-text{position:absolute;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;transform:translate(-50%,-50%);opacity:0;transition:opacity .3s ease}.cursor.hover .cursor-circle{width:80px;height:80px;opacity:1}.cursor.hover .cursor-dot{transform:translate(-50%,-50%) scale(0)}.cursor.text-visible .cursor-text{opacity:1}.cursor.text-visible .cursor-circle{width:120px;height:120px;background:var(--color-text)}.loader{position:fixed;inset:0;background:var(--color-bg);display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .8s var(--ease-out-expo),visibility .8s}.loader.hidden{opacity:0;visibility:hidden}.loader-content{text-align:center}.loader-text{font-family:var(--font-display);font-size:clamp(3rem,10vw,8rem);font-weight:700;letter-spacing:.2em;margin-bottom:var(--space-md);overflow:hidden}.loader-letter{display:inline-block;opacity:0;transform:translateY(100%);animation:letterReveal .6s var(--ease-out-expo) forwards}.loader-letter:nth-child(1){animation-delay:.1s}.loader-letter:nth-child(2){animation-delay:.15s}.loader-letter:nth-child(3){animation-delay:.2s}.loader-letter:nth-child(4){animation-delay:.25s}.loader-letter:nth-child(5){animation-delay:.3s}@keyframes letterReveal{to{opacity:1;transform:translateY(0)}}.loader-bar{width:200px;height:2px;background:var(--color-surface);margin:0 auto;overflow:hidden}.loader-progress{width:0;height:100%;background:var(--color-accent);animation:loaderProgress 1.5s var(--ease-out-expo) .5s forwards}@keyframes loaderProgress{to{width:100%}}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,var(--color-bg) 0%,#1f1b17 25%,#252019 50%,#1d1915 75%,var(--color-bg) 100%)}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 20% 50%,rgba(232,213,183,.03) 0%,transparent 50%),radial-gradient(ellipse at 80% 50%,rgba(196,181,160,.03) 0%,transparent 50%);pointer-events:none}.hero:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");opacity:.03;pointer-events:none}.hero-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.hero-content{position:relative;z-index:2;text-align:center;padding:var(--space-md);padding-top:100px;padding-bottom:80px}.hero-title-wrapper{display:flex;flex-direction:column;align-items:center;gap:var(--space-md)}.hero-title{font-family:var(--font-display);font-size:clamp(3rem,10vw,8rem);font-weight:400;line-height:.9;letter-spacing:-.02em;text-transform:uppercase}.hero-title-alt{color:var(--color-accent)}.hero-line{display:block;overflow:hidden}.hero-line span{display:inline-block;transform:translateY(100%);opacity:0}.hero-divider{width:100px;height:1px;background:var(--color-accent);opacity:0;transform:scaleX(0)}.hero-meta{margin-top:var(--space-md);opacity:1}.hero-subtitle{font-family:var(--font-mono);font-size:.875rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-xs)}.hero-location{font-size:.875rem;color:var(--color-text-muted)}.hero-scroll-indicator{position:absolute;bottom:var(--space-md);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);opacity:1;color:var(--color-text-muted)}.hero-scroll-indicator span{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-muted)}.scroll-arrow{animation:scrollBounce 2s var(--ease-in-out) infinite}@keyframes scrollBounce{0%,to{transform:translateY(0)}50%{transform:translateY(10px)}}.projects{position:relative;min-height:100vh;background:var(--color-bg-alt);overflow:hidden}.projects-header{position:absolute;top:var(--space-lg);left:var(--space-lg);right:var(--space-lg);display:flex;justify-content:space-between;align-items:center;z-index:10}.section-label{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted)}.section-count{font-family:var(--font-display);font-size:1.5rem;color:var(--color-accent)}.projects-wrapper{height:100vh;overflow:hidden}.projects-track{display:flex;height:100%;will-change:transform}.project-slide{flex:0 0 100vw;height:100%;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:var(--space-2xl) var(--space-lg);gap:var(--space-xl)}.project-image-wrapper{position:relative;height:70vh;max-height:600px}.project-image{position:relative;width:100%;height:100%;background:var(--color-surface);border-radius:4px;overflow:hidden}.project-image:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--accent) 0%,transparent 50%);opacity:.1}.project-image-inner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.project-visual{width:80%;height:60%;display:flex;align-items:center;justify-content:center}.quickchat-visual .chat-bubbles{display:flex;flex-direction:column;gap:1rem;width:100%}.chat-bubble{padding:1rem 1.5rem;border-radius:1rem;font-size:.9rem;max-width:70%;animation:bubbleFloat 3s ease-in-out infinite}.chat-bubble.incoming{background:var(--color-accent);color:var(--color-bg);align-self:flex-start;border-bottom-left-radius:4px}.chat-bubble.outgoing{background:var(--color-surface);color:var(--color-text);align-self:flex-end;border-bottom-right-radius:4px;animation-delay:.5s}.chat-bubble:nth-child(3){animation-delay:1s}@keyframes bubbleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.thinkboard-visual .note-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;width:100%}.note-card{background:var(--color-bg);padding:1.5rem;border-radius:8px;font-size:1rem;text-align:center;box-shadow:0 10px 40px #0000004d;transition:transform .3s var(--ease-out-expo)}.note-card:hover{transform:translateY(-5px) rotate(-2deg)}.note-card:nth-child(2){transform:rotate(3deg)}.note-card:nth-child(3){grid-column:span 2}.sentiment-visual .sentiment-graph{display:flex;align-items:flex-end;justify-content:center;gap:2rem;height:100%;padding-bottom:2rem}.sentiment-bar{width:60px;height:var(--height);display:flex;align-items:flex-start;justify-content:center;padding-top:1rem;border-radius:30px;font-size:1.5rem;animation:barGrow 1s var(--ease-out-expo) forwards}.sentiment-bar.positive{background:linear-gradient(to top,#4ade80,#22c55e)}.sentiment-bar.neutral{background:linear-gradient(to top,#fbbf24,#f59e0b)}.sentiment-bar.negative{background:linear-gradient(to top,#f87171,#ef4444)}@keyframes barGrow{0%{height:0}}.graphdb-visual .graph-nodes{position:relative;width:200px;height:200px}.graph-node{position:absolute;width:40px;height:40px;background:var(--color-accent);border-radius:50%;animation:nodesPulse 2s ease-in-out infinite}.graph-node.node-1{top:0;left:50%;transform:translate(-50%)}.graph-node.node-2{bottom:20%;left:10%;animation-delay:.3s}.graph-node.node-3{bottom:20%;right:10%;animation-delay:.6s}.graph-edge{position:absolute;background:var(--color-accent);opacity:.5}.graph-edge.edge-1{width:2px;height:100px;top:40px;left:calc(50% - 1px);transform:rotate(30deg);transform-origin:top center}.graph-edge.edge-2{width:2px;height:100px;top:40px;left:calc(50% - 1px);transform:rotate(-30deg);transform-origin:top center}@keyframes nodesPulse{0%,to{transform:scale(1);box-shadow:0 0 #e8d5b766}50%{transform:scale(1.1);box-shadow:0 0 20px 10px #e8d5b700}}.graph-node.node-1{animation-name:nodesPulse}.audiocnn-visual{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.audio-waves{display:flex;align-items:center;gap:8px;z-index:2}.wave{width:12px;height:20px;background:var(--color-accent);border-radius:6px;animation:waveAnim 1.2s ease-in-out infinite}.wave-1{animation-delay:0s;height:30px}.wave-2{animation-delay:.2s;height:60px}.wave-3{animation-delay:.4s;height:90px}.wave-4{animation-delay:.2s;height:50px}.wave-5{animation-delay:0s;height:30px}@keyframes waveAnim{0%,to{transform:scaleY(.5);opacity:.5}50%{transform:scaleY(1);opacity:1}}.spectrogram-overlay{position:absolute;bottom:0;left:0;width:100%;height:40%;background:linear-gradient(0deg,rgba(232,213,183,.15) 0%,transparent 100%);filter:blur(8px);z-index:1}.lanenet-visual{position:relative;width:100%;height:100%;overflow:hidden;perspective:500px}.road{position:absolute;bottom:-20%;left:0;width:100%;height:120%;background:#0003;transform:rotateX(60deg);display:flex;justify-content:space-evenly}.lane-marking{width:6px;height:100%;background-image:linear-gradient(to bottom,var(--color-accent) 50%,transparent 50%);background-size:100% 40px;animation:moveRoad 2s linear infinite;opacity:.6}.lane-marking.middle-lane{opacity:.9;box-shadow:0 0 10px #e8d5b780}.detection-box{position:absolute;bottom:30%;left:50%;transform:translate(-50%);width:80px;height:40px;border:2px dashed #4ade80;border-radius:4px;animation:detectBox 3s ease-in-out infinite alternate}@keyframes moveRoad{0%{background-position:0 0}to{background-position:0 80px}}@keyframes detectBox{0%{transform:translate(-80%);opacity:.5;width:60px}50%{opacity:1;width:80px;border-color:#22c55e}to{transform:translate(20%);opacity:.5;width:70px}}.resumeai-visual .ai-chat-interface{width:80%;height:80%;background:var(--color-bg);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;box-shadow:0 10px 30px #00000080;border:1px solid rgba(255,255,255,.1)}.resumeai-visual .ai-message,.resumeai-visual .user-message{padding:.8rem 1.2rem;border-radius:8px;font-size:.85rem;max-width:80%;opacity:0;transform:translateY(10px)}.resumeai-visual .ai-message{background:#5e72e433;color:#e2e8f0;align-self:flex-start;animation:chatFadeIn .5s ease-out .2s forwards}.resumeai-visual .user-message{background:var(--color-surface);color:var(--color-text);align-self:flex-end;animation:chatFadeIn .5s ease-out 1s forwards}.resumeai-visual .ai-report-box{margin-top:auto;padding:1rem;background:linear-gradient(135deg,#5e72e466,#5e72e41a);border-radius:8px;text-align:center;font-weight:700;font-size:.9rem;color:#fff;opacity:0;animation:chatFadeIn .5s ease-out 1.8s forwards}@keyframes chatFadeIn{to{opacity:1;transform:translateY(0)}}.neuroclaw-visual .terminal-window{width:85%;height:70%;background:#1e1e1e;border-radius:8px;overflow:hidden;box-shadow:0 15px 35px #0009;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column}.neuroclaw-visual .terminal-header{height:30px;background:#2d2d2d;display:flex;align-items:center;padding:0 12px;gap:8px}.neuroclaw-visual .dot{width:12px;height:12px;border-radius:50%}.neuroclaw-visual .dot.close{background:#ff5f56}.neuroclaw-visual .dot.minimize{background:#ffbd2e}.neuroclaw-visual .dot.maximize{background:#27c93f}.neuroclaw-visual .terminal-body{padding:1.5rem;font-family:var(--font-mono);font-size:.85rem;color:#a0aabf;display:flex;flex-direction:column;gap:.5rem}.neuroclaw-visual .terminal-line span{color:#20c997;margin-right:8px}.neuroclaw-visual .terminal-line.highlight{color:#e5c07b;font-weight:700;opacity:0;animation:typeLine .1s forwards .5s}.neuroclaw-visual .terminal-line:nth-child(3){opacity:0;animation:typeLine .1s forwards 1.2s}@keyframes typeLine{to{opacity:1}}.project-info{position:relative;padding-left:var(--space-lg)}.project-number{position:absolute;top:50%;right:-80px;transform:translateY(-50%);font-family:var(--font-display);font-size:clamp(6rem,12vw,10rem);font-weight:400;line-height:1;color:var(--color-surface);pointer-events:none;-webkit-user-select:none;user-select:none;writing-mode:vertical-rl;text-orientation:mixed;z-index:0;opacity:.5}.project-title{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,4rem);font-weight:500;margin-bottom:var(--space-md);position:relative;z-index:2}.project-description{font-size:1.1rem;line-height:1.8;color:var(--color-text-muted);max-width:500px;margin-bottom:var(--space-md)}.project-tech{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-bottom:var(--space-lg)}.project-tech span{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;padding:var(--space-xs) var(--space-sm);background:var(--color-surface);border-radius:2px;color:var(--color-accent)}.project-links{display:flex;gap:var(--space-md);margin-bottom:var(--space-xl)}.project-link{font-family:var(--font-mono);font-size:.875rem;letter-spacing:.1em;text-transform:uppercase;padding:var(--space-sm) 0;position:relative;color:var(--color-text);transition:color .3s ease}.project-link:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--color-accent);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease-out-expo)}.project-link:hover{color:var(--color-accent)}.project-link:hover:after{transform:scaleX(1);transform-origin:left}.projects-progress{display:flex;align-items:center;gap:var(--space-md)}.progress-current,.progress-total{font-family:var(--font-mono);font-size:.875rem;color:var(--color-text-muted)}.progress-bar{width:100px;height:2px;background:var(--color-surface);overflow:hidden}.progress-fill{width:0%;height:100%;background:var(--color-accent);transition:width .3s var(--ease-out-expo)}.about{min-height:auto;background:var(--color-bg);padding:var(--space-lg) var(--space-lg) var(--space-md);position:relative;overflow:hidden}.about-container{max-width:var(--container-max);margin:0 auto;display:grid;grid-template-columns:1fr 1.5fr;gap:var(--space-xl);align-items:center}.about-portrait{position:relative;display:flex;align-items:center;justify-content:center}.portrait-frame{position:relative;aspect-ratio:3/4;width:100%;max-width:350px;min-width:250px}.portrait-image{position:relative;width:100%;height:100%;background:var(--color-surface);border-radius:4px;overflow:hidden}.portrait-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-surface) 0%,var(--color-bg-alt) 100%)}.portrait-initials{font-family:var(--font-display);font-size:6rem;font-weight:300;color:var(--color-accent);opacity:.3}.portrait-decoration{position:absolute;top:-20px;right:-20px;width:100%;height:100%;border:1px solid var(--color-accent);border-radius:4px;opacity:.3;z-index:-1}.about-content{padding-left:var(--space-lg)}.about-title{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,5rem);font-weight:400;line-height:1.1;margin-bottom:var(--space-xl)}.about-title .word{display:inline-block;opacity:0;transform:translateY(50px);margin-right:.3em}.about-title .highlight{color:var(--color-accent)}.about-title .italic{font-style:italic;color:var(--color-highlight)}.about-philosophy{display:grid;gap:var(--space-lg);margin-bottom:var(--space-xl)}.philosophy-item{opacity:0;transform:translateY(30px)}.philosophy-label{display:block;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-xs)}.philosophy-item p{font-size:1.1rem;line-height:1.8;color:var(--color-text-muted);max-width:500px}.about-skills{margin-top:var(--space-xl)}.skills-title{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-md);opacity:0;transform:translateY(20px)}.skills-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.skill-category{opacity:0;transform:translateY(20px)}.skill-label{display:block;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-xs)}.skill-items{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.skill-items span{font-size:.9rem;color:var(--color-text-muted);padding:4px 12px;background:var(--color-surface);border-radius:2px;transition:all .3s ease}.skill-items span:hover{background:var(--color-accent);color:var(--color-bg)}.contact{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-bg-alt);overflow:hidden}.contact-content{position:relative;z-index:2;text-align:center;padding:var(--space-md)}.contact-intro{font-family:var(--font-mono);font-size:.875rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-sm)}.contact-title{font-family:var(--font-display);font-size:clamp(2rem,5vw,4rem);font-weight:400;margin-bottom:var(--space-xl)}.contact-email{display:inline-block;font-family:var(--font-display);font-size:clamp(1.5rem,4vw,3rem);font-weight:400;color:var(--color-accent);position:relative;padding:var(--space-md) var(--space-lg);transition:all .5s var(--ease-out-expo)}.contact-email .email-text{position:relative;z-index:2;display:inline-block;transition:transform .5s var(--ease-out-expo)}.contact-email:before{content:"";position:absolute;inset:0;background:var(--color-accent);opacity:0;transform:scale(.8);transition:all .5s var(--ease-out-expo);border-radius:4px}.contact-email:hover:before{opacity:.1;transform:scale(1)}.contact-email:hover .email-text{transform:scale(1.02)}.contact-links{display:flex;justify-content:center;gap:var(--space-lg);margin-top:var(--space-xl)}.contact-link{font-family:var(--font-mono);font-size:.875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);position:relative;transition:color .3s ease}.contact-link:after{content:"";position:absolute;bottom:-4px;left:0;width:100%;height:1px;background:var(--color-accent);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease-out-expo)}.contact-link:hover{color:var(--color-accent)}.contact-link:hover:after{transform:scaleX(1);transform-origin:left}.contact-decoration{position:absolute;bottom:var(--space-lg);left:0;right:0;display:flex;justify-content:space-between;padding:0 var(--space-lg);font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;color:var(--color-text-muted)}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:var(--space-xs);z-index:1001;height:40px;width:40px;align-items:center;justify-content:center}.hamburger{display:block;width:24px;height:2px;background:var(--color-text);position:relative;transition:background .3s ease}.hamburger:before,.hamburger:after{content:"";position:absolute;width:24px;height:2px;background:var(--color-text);left:0;transition:transform .3s ease,top .3s ease,bottom .3s ease}.hamburger:before{top:-8px}.hamburger:after{bottom:-8px}.menu-open .hamburger{background:transparent}.menu-open .hamburger:before{top:0;transform:rotate(45deg)}.menu-open .hamburger:after{bottom:0;transform:rotate(-45deg)}.navigation{position:fixed;top:var(--space-md);left:50%;transform:translate(-50%);z-index:1000;background:#1a1714e6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(232,213,183,.1);border-radius:50px;padding:var(--space-xs) var(--space-sm)}.nav-list{display:flex;gap:var(--space-xs);list-style:none}.nav-link{display:block;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;padding:var(--space-sm) var(--space-md);color:var(--color-text-muted);border-radius:30px;transition:all .3s var(--ease-out-expo)}.nav-link:hover,.nav-link.active{color:var(--color-bg);background:var(--color-accent)}@media(max-width:1024px){.project-slide{grid-template-columns:1fr;grid-template-rows:1fr auto;gap:var(--space-md)}.project-image-wrapper{height:40vh}.project-number{position:static;writing-mode:horizontal-tb;font-size:6rem;margin-bottom:var(--space-sm)}.project-info{padding-left:0}.about-container{grid-template-columns:1fr;gap:var(--space-lg)}.portrait-frame{max-width:300px;margin:0 auto}.about-content{padding-left:0}}@media(max-width:768px){:root{--space-lg: 2rem;--space-xl: 4rem;--space-2xl: 6rem}.hero-title{font-size:clamp(2.5rem,12vw,5rem)}.hero-scroll-indicator{bottom:var(--space-lg);opacity:1}.scroll-arrow svg{width:32px;height:32px}.projects-header{top:calc(var(--space-md) + 50px);left:var(--space-md);right:var(--space-md);z-index:100}.project-slide{flex:0 0 100vw;width:100vw;min-width:100vw;padding:var(--space-sm);padding-top:calc(var(--space-md) + 90px);padding-bottom:var(--space-md);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;position:relative}.project-slide:before{content:"";position:absolute;top:calc(var(--space-md) + 85px);left:var(--space-sm);right:var(--space-sm);bottom:var(--space-sm);background:var(--color-surface);border-radius:20px;border:1px solid rgba(232,213,183,.15);z-index:0}.project-image-wrapper{position:relative;z-index:1;width:calc(100% - 2rem);height:35vh;min-height:180px;max-height:250px;margin:var(--space-sm);border-radius:16px;overflow:hidden}.project-image{border-radius:16px}.project-info{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;justify-content:center;padding:var(--space-sm) var(--space-md);padding-bottom:var(--space-md);text-align:center;width:100%;box-sizing:border-box}.project-number{display:none}.project-title{font-size:1.4rem;margin-bottom:var(--space-xs)}.project-description{font-size:.85rem;line-height:1.5;margin-bottom:var(--space-md);color:var(--color-text-muted)}.project-tech{justify-content:center;margin-bottom:var(--space-md);gap:6px;flex-wrap:wrap}.project-tech span{font-size:.6rem;padding:5px 10px}.project-links{display:flex;flex-direction:row;justify-content:center;gap:var(--space-md);margin-top:auto}.project-link{font-size:.7rem;padding:10px 20px;background:var(--color-accent);color:var(--color-bg);border-radius:25px;text-align:center;font-weight:500}.project-link:hover{background:var(--color-text)}.skills-grid-container{grid-template-columns:1fr}.skills-stats{display:none!important}.contact{padding:var(--space-xl) var(--space-md);padding-bottom:100px}.contact-container{padding:0;max-width:100%}.contact-info-grid,.socials-grid{grid-template-columns:1fr 1fr;gap:var(--space-sm)}.contact-social-link{padding:var(--space-md)}.menu-toggle{display:flex}.nav-list{display:none;flex-direction:column;position:absolute;top:100%;right:0;background:#1a1714f2;border:1px solid rgba(232,213,183,.1);border-radius:12px;padding:var(--space-md);min-width:200px;margin-top:10px}.menu-open .nav-list{display:flex}.navigation{top:var(--space-sm);left:auto;right:var(--space-md);transform:none;padding:0;border-radius:50%}.menu-open.navigation{border-radius:20px}.nav-link{padding:var(--space-sm);font-size:.8rem}}@media(max-width:480px){.hero-content{padding-top:80px;padding-bottom:60px}.hero-meta{margin-top:var(--space-sm)}.hero-subtitle{font-size:.9rem}.hero-scroll-indicator{bottom:var(--space-md)}.contact-info-grid,.socials-grid{grid-template-columns:1fr}.contact-main-card{padding:var(--space-md)}.cta-email{font-size:.85rem;word-break:break-all}.contact-header,.contact-main-card,.contact-info-grid,.contact-socials{margin-left:0;margin-right:0}}@media(hover:none)and (pointer:coarse){.cursor{display:none}body{cursor:auto}a,button{cursor:pointer}}.skills-section{min-height:100vh;background:var(--color-bg-alt);padding:var(--space-2xl) var(--space-lg);position:relative;overflow:hidden}.skills-container{max-width:var(--container-max);margin:0 auto}.skills-header{text-align:center;margin-bottom:var(--space-xl)}.skills-label{display:inline-block;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-sm);padding:var(--space-xs) var(--space-md);background:#e8d5b71a;border-radius:50px}.skills-section-title{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,5rem);font-weight:400;margin-bottom:var(--space-sm);color:var(--color-text)}.skills-section-subtitle{font-size:1.1rem;color:var(--color-text-muted);max-width:500px;margin:0 auto}.skills-grid-container{column-count:3;column-gap:var(--space-md);margin-bottom:var(--space-xl)}.skill-category-card{background:var(--color-surface);border-radius:12px;padding:var(--space-lg);border:1px solid rgba(232,213,183,.1);transition:all .4s var(--ease-out-expo);break-inside:avoid;margin-bottom:var(--space-md)}.skill-category-card:hover{border-color:#e8d5b74d;transform:translateY(-5px);box-shadow:0 20px 60px #0000004d}.skill-category-title{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid rgba(232,213,183,.2)}.skill-items-grid{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.skill-item{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:var(--color-bg);border-radius:8px;border:1px solid rgba(232,213,183,.1);transition:all .3s var(--ease-out-expo);cursor:default}.skill-item:hover{background:#e8d5b71a;border-color:var(--skill-color, var(--color-accent));transform:scale(1.05)}.skill-icon{font-size:1.2rem}.skill-name{font-size:.9rem;color:var(--color-text);font-weight:500}.skills-stats{display:flex;justify-content:center;gap:var(--space-xl);padding:var(--space-lg);background:var(--color-surface);border-radius:12px;border:1px solid rgba(232,213,183,.1)}.stat-item{text-align:center;padding:var(--space-md)}.stat-number{display:block;font-family:var(--font-display);font-size:clamp(2rem,4vw,3.5rem);font-weight:400;color:var(--color-accent);line-height:1;margin-bottom:var(--space-xs)}.stat-label{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}.contact{position:relative;min-height:100vh;background:var(--color-bg);padding:var(--space-2xl) var(--space-lg);padding-bottom:120px;overflow:hidden}.contact-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.contact-container{position:relative;z-index:2;max-width:1000px;margin:0 auto}.contact-header{text-align:center;margin-bottom:var(--space-xl)}.contact-label{display:inline-block;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-sm);padding:var(--space-xs) var(--space-md);background:#e8d5b71a;border-radius:50px}.contact-main-title{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.5rem);font-weight:400;margin-bottom:var(--space-md);color:var(--color-text);line-height:1.2}.contact-subtitle{font-size:1.1rem;color:var(--color-text-muted);max-width:600px;margin:0 auto;line-height:1.8}.contact-main-card{background:linear-gradient(135deg,var(--color-surface) 0%,var(--color-bg-alt) 100%);border-radius:16px;padding:var(--space-xl);margin-bottom:var(--space-lg);border:1px solid rgba(232,213,183,.2);transition:all .4s var(--ease-out-expo)}.contact-main-card:hover{border-color:#e8d5b766;transform:translateY(-5px);box-shadow:0 30px 80px #0006}.contact-card-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-md)}.contact-cta{text-align:left}.cta-icon{font-size:2.5rem;margin-bottom:var(--space-sm);display:block}.cta-title{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-sm)}.cta-email{font-family:var(--font-display);font-size:clamp(1.2rem,3vw,2rem);color:var(--color-accent);transition:all .3s ease;display:inline-block}.cta-email:hover{color:var(--color-highlight);transform:translate(10px)}.contact-availability{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:#22c55e1a;border-radius:50px;border:1px solid rgba(34,197,94,.3)}.availability-dot{width:10px;height:10px;background:#22c55e;border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.availability-text{font-family:var(--font-mono);font-size:.75rem;color:#22c55e;letter-spacing:.1em;text-transform:uppercase}.contact-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md);margin-bottom:var(--space-xl)}.contact-info-card{background:var(--color-surface);border-radius:12px;padding:var(--space-lg);text-align:center;border:1px solid rgba(232,213,183,.1);transition:all .3s var(--ease-out-expo)}.contact-info-card:hover{border-color:#e8d5b74d;transform:translateY(-3px)}.info-icon{font-size:2rem;margin-bottom:var(--space-sm)}.info-title{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-xs)}.info-value{display:block;font-size:1rem;color:var(--color-text);font-weight:500;margin-bottom:4px;text-decoration:none;transition:color .3s ease}a.info-value:hover{color:var(--color-accent)}.info-note{font-size:.8rem;color:var(--color-text-muted)}.contact-socials{text-align:center}.socials-title{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-md)}.socials-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-sm);max-width:600px;margin:0 auto}.contact-social-link{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-md);background:var(--color-surface);border-radius:12px;border:1px solid rgba(232,213,183,.1);transition:all .3s var(--ease-out-expo)}.contact-social-link:hover{background:#e8d5b71a;border-color:var(--color-accent);transform:translateY(-5px)}.contact-social-link:hover .social-icon{color:var(--color-accent)}.social-icon{color:var(--color-text);transition:color .3s ease}.social-name{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}.contact-footer{position:absolute;bottom:var(--space-lg);left:0;right:0;padding:0 var(--space-lg)}.footer-content{display:flex;justify-content:space-between;align-items:center;max-width:var(--container-max);margin:0 auto}.footer-text,.footer-year{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;color:var(--color-text-muted)}.experience-section{position:relative;padding:var(--space-2xl) 0;background:var(--color-bg)}.experience-container{max-width:var(--container-max);margin:0 auto;padding:0 var(--space-lg)}.experience-header{margin-bottom:var(--space-xl);text-align:center}.experience-label{display:block;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-sm)}.experience-title{font-family:var(--font-display);font-size:clamp(3rem,6vw,5rem);color:var(--color-text);font-weight:400}.experience-timeline{display:flex;flex-direction:column;gap:var(--space-xl);position:relative}.experience-timeline:before{content:"";position:absolute;top:0;bottom:0;left:20px;width:2px;background:#e8d5b71a}.experience-card{position:relative;padding-left:60px}.experience-card:before{content:"";position:absolute;top:10px;left:14px;width:14px;height:14px;background:var(--color-bg);border:2px solid var(--color-accent);border-radius:50%;z-index:2;transition:background .3s ease}.experience-card:hover:before{background:var(--color-accent)}.experience-meta{margin-bottom:var(--space-sm)}.experience-duration{display:block;font-family:var(--font-mono);font-size:.85rem;color:var(--color-accent);margin-bottom:4px}.experience-company{font-size:1.1rem;color:var(--color-text-muted);font-weight:500}.experience-content{background:var(--color-surface);padding:var(--space-lg);border-radius:12px;border:1px solid rgba(232,213,183,.05);transition:transform .3s var(--ease-out-expo),border-color .3s ease}.experience-card:hover .experience-content{transform:translate(10px);border-color:#e8d5b733}.experience-role{font-family:var(--font-display);font-size:2rem;margin-bottom:var(--space-sm);color:var(--color-text)}.experience-desc{color:var(--color-text-muted);line-height:1.6;margin-bottom:var(--space-md)}.experience-founder{font-family:var(--font-mono);font-size:.85rem;color:var(--color-text-muted);margin-bottom:var(--space-md);padding:8px 12px;background:#ffffff05;border-radius:4px;display:inline-block}.experience-links{display:flex;gap:var(--space-md);flex-wrap:wrap}.experience-link{font-family:var(--font-mono);font-size:.85rem;color:var(--color-accent);text-transform:uppercase;letter-spacing:.1em;position:relative;padding-bottom:4px}.experience-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--color-accent);transition:width .3s ease}.experience-link:hover:after{width:100%}.certificate-link{color:var(--color-highlight)}.certificate-link:after{background:var(--color-highlight)}@media(max-width:1024px){.skills-grid-container{column-count:2}.skills-stats,.contact-info-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.skills-grid-container{column-count:1}.skills-stats{grid-template-columns:repeat(2,1fr)}.contact-info-grid{grid-template-columns:1fr 1fr}.socials-grid{grid-template-columns:repeat(2,1fr)}.contact-card-content{flex-direction:column;text-align:center}.contact-cta{text-align:center}}
