:root{--bg: #0d0d0d;--bg-soft: #111111;--surface: #181818;--surface-strong: #1f1f1f;--text: #ffffff;--muted: #aaa;--muted-strong: #d6d6d6;--line: rgba(255, 255, 255, .13);--line-strong: rgba(255, 255, 255, .22);--pink: #ff0099;--orange: #ff9e00;--yellow: #ffbe0b;--shadow: 0 24px 70px rgba(0, 0, 0, .46);--gradient: linear-gradient(90deg, var(--pink), var(--orange), var(--yellow));--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{min-height:100vh;isolation:isolate;background:var(--bg);color:var(--text);font-family:var(--sans);overflow-x:hidden;scrollbar-color:var(--orange) #141414}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent)}a{color:inherit}img{max-width:100%}::selection{background:var(--pink);color:var(--text)}.container{width:min(1160px,calc(100% - 2rem));margin:0 auto}section{position:relative;min-height:100vh;padding:clamp(5rem,9vw,8rem) 0;overflow:hidden;opacity:1}section:not(.hero):before{content:none}main>section[id]:focus{outline:none}section.visible{opacity:1;transform:translateY(0)}section>.container{position:relative;z-index:1}.section-header{max-width:760px;margin-bottom:clamp(2rem,5vw,4rem)}.section-header.center{margin-inline:auto;text-align:center}.section-kicker,.eyebrow,.stack,.secret-hint,.next-preview{font-family:var(--mono)}.section-kicker{width:fit-content;margin-bottom:.85rem;color:var(--orange);font-size:.92rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.section-kicker:before{content:"</> ";color:var(--pink)}.section-header h2{max-width:760px;font-size:var(--section-title-size, clamp(2.35rem, 4.6vw, 4rem));line-height:var(--section-title-leading, 1.08);letter-spacing:var(--section-title-tracking, -.045em)}.section-header p:not(.section-kicker){max-width:620px;margin-top:1rem;color:var(--muted);font-size:clamp(1rem,1.8vw,1.16rem);line-height:1.75}.site-nav{position:fixed;top:12px;left:50%;z-index:100;display:flex;align-items:center;gap:.18rem;padding:.3rem;transform:translate(-50%);border:1px solid var(--line);border-radius:999px;background:#14131575;box-shadow:0 8px 30px #0000003d,inset 0 1px #ffffff0a;backdrop-filter:blur(18px);transition:background .3s ease,border-color .3s ease,box-shadow .3s ease;overflow:hidden}.site-nav.scrolled{background:#1b181ef0;border-color:#ffffff26;box-shadow:0 12px 35px #0000007a,inset 0 1px #ffffff0a}.nav-indicator{position:absolute;top:.3rem;left:0;z-index:0;width:0;height:calc(100% - .6rem);border-radius:999px;background:linear-gradient(115deg,#f7098b,#ff7732 75%,var(--orange));box-shadow:inset 0 1px #ffffff2e,0 2px 9px #fc347924;transition:transform .4s cubic-bezier(.22,1,.36,1),width .4s cubic-bezier(.22,1,.36,1),opacity .25s ease}.site-nav a{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:2.2rem;padding:0 .8rem;border-radius:999px;color:#ffffffc7;font-size:.82rem;font-weight:650;text-decoration:none;white-space:nowrap;transition:color .25s ease,background .25s ease}.site-nav a:hover,.site-nav a:focus-visible{color:var(--text);background:#ffffff14;box-shadow:inset 0 0 0 1px #ffffff14;outline:none}.site-nav a.active{color:var(--text);text-shadow:0 1px 14px rgba(0,0,0,.35)}.site-nav a:focus-visible{outline:2px solid #ffd092;outline-offset:-3px;background:#ffffff0f}@media(prefers-reduced-motion:reduce){.site-nav,.nav-indicator,.site-nav a{transition:none}}.site-nav a i{font-size:.72rem}.hero{display:grid;min-height:100svh;place-items:center;padding:8rem 0 6rem;overflow:hidden;background:linear-gradient(120deg,#0d0d0d,#151515 54%,#0d0d0d)}.hero:after{content:"";position:absolute;inset:auto 0 0;height:32%;background:linear-gradient(to bottom,transparent,var(--bg));pointer-events:none;z-index:1}.hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#0d0d0dd1,#0d0d0d70 48%,#0d0d0dbd);pointer-events:none}#code-bg{position:absolute;inset:0;z-index:0;width:100%;height:100%;opacity:.46}.hero-content{position:relative;z-index:2;width:min(960px,calc(100% - 2rem));text-align:left}.eyebrow{display:inline-flex;align-items:center;gap:.6rem;margin-bottom:1.15rem;color:var(--muted);font-size:.9rem}.eyebrow:before{content:"";width:34px;height:1px;background:var(--gradient)}.hero h1{max-width:980px;font-size:clamp(2.65rem,8vw,7rem);line-height:.9;letter-spacing:0}.hero h1 span{color:transparent;background:var(--gradient);background-clip:text;-webkit-background-clip:text}.hero-type{margin-top:1.15rem;min-height:2.2rem;color:var(--orange);font-family:var(--mono);font-size:clamp(1.35rem,3vw,2.35rem);font-weight:700}.cursor{display:inline-block;color:var(--pink);font-weight:700;animation:blink .8s infinite}.hero-summary{max-width:690px;margin-top:1.3rem;color:var(--muted-strong);font-size:clamp(1rem,2vw,1.2rem);line-height:1.75}.hero-actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:3.1rem;padding:0 1.25rem;border:1px solid var(--line);border-radius:8px;color:var(--text);font-weight:600;text-decoration:none;transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease}.btn:hover,.btn:focus-visible{transform:translateY(-2px);outline:none}.btn-primary{border-color:#ff0099bd;background:linear-gradient(135deg,#ff00992e,#ff9e001a);box-shadow:0 0 26px #ff00992e}.btn-secondary{background:#ffffff09}.btn-secondary:hover,.btn-secondary:focus-visible{border-color:#ffbe0b9e;box-shadow:0 0 24px #ffbe0b1f}.hero-facts{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.55rem;list-style:none}.hero-facts li{padding:.58rem .8rem;border:1px solid var(--line);border-radius:999px;background:#ffffff09;color:var(--muted-strong);font-size:.92rem}.secret-hint{display:flex;align-items:center;gap:.6rem;margin-top:2.1rem;color:#ffffff73;font-size:.9rem}.secret-hint i{color:var(--pink)}.next-preview{display:grid;width:fit-content;max-width:380px;margin-top:1.35rem;padding-top:1rem;border-top:1px solid var(--line);color:var(--text);text-decoration:none}.next-preview span{color:var(--pink);font-size:.72rem;text-transform:uppercase}.next-preview strong{margin-top:.22rem;font-size:1rem}.next-preview small{margin-top:.18rem;color:#ffffff7a;font-size:.8rem;line-height:1.45}.next-preview:hover strong,.next-preview:focus-visible strong{color:var(--yellow)}.next-preview:focus-visible{outline:2px solid var(--orange);outline-offset:6px}.scroll-arrow{position:absolute;bottom:28px;left:50%;z-index:3;display:grid;width:44px;height:44px;place-items:center;transform:translate(-50%);border:1px solid var(--line);border-radius:999px;color:var(--orange);text-decoration:none;animation:bounce 1.6s infinite}.about{min-height:auto;background:transparent}.about-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:1.25rem;align-items:stretch}.about-panel,.about-stats>div{border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#ffffff0e,#ffffff06);box-shadow:var(--shadow);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.about-panel:hover,.about-stats>div:hover{transform:translateY(-4px);border-color:#ff9e0047;box-shadow:0 20px 54px #00000057,0 0 22px #ff9e0014}.about-panel{padding:clamp(1.3rem,4vw,2rem)}.about-panel h3{margin-bottom:1rem;color:var(--text);font-size:clamp(1.3rem,3vw,2rem)}.about-list{display:grid;gap:1rem;list-style:none}.about-list li{display:grid;grid-template-columns:3rem 1fr;gap:1rem;color:var(--muted-strong);line-height:1.65}.about-list span{color:var(--orange);font-family:var(--mono)}.about-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.about-stats>div{display:grid;align-content:center;min-height:150px;padding:1.1rem}.about-stats strong{color:transparent;background:var(--gradient);background-clip:text;-webkit-background-clip:text;font-family:var(--mono);font-size:clamp(2rem,5vw,3.1rem);line-height:1}.about-stats span{margin-top:.6rem;color:var(--muted);font-size:.95rem;line-height:1.35}.skills{min-height:auto;padding:clamp(3rem,4.5vw,3.6rem) 0;background:transparent}.skills .section-header{margin-bottom:clamp(1.2rem,2vw,1.6rem)}.learning-badge{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin-top:1rem;padding:.45rem;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#ffffff09;box-shadow:inset 0 1px #ffffff0f}.learning-badge span{color:var(--muted);font-family:var(--mono);font-size:.76rem;font-weight:700;text-transform:uppercase}.learning-badge strong{padding:.35rem .55rem;border:1px solid rgba(255,158,0,.2);border-radius:8px;background:#ff9e0014;color:var(--text);font-size:.78rem;line-height:1}.skills-group+.skills-group{margin-top:1rem}.skills h3{margin-bottom:.7rem;color:var(--orange);font-size:1rem;letter-spacing:0}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(138px,1fr));gap:1rem}.skills-grid.compact{max-width:170px}.skill-card{position:relative;display:grid;min-height:132px;place-items:center;padding:1.25rem 1rem;overflow:hidden;isolation:isolate;border:1px solid var(--line);border-radius:8px;background:#1a1a1a;transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease;will-change:transform}.skill-card img{position:relative;z-index:1;box-sizing:border-box;width:54px;height:54px;object-fit:contain;filter:saturate(1.08);transition:transform .25s ease,filter .25s ease}.skill-card span{position:relative;z-index:1;display:block;color:var(--text);font-size:.92rem;font-weight:700}.skill-card:hover,.skill-card:focus-within{transform:translateY(-5px);border-color:#ff9e0080;background:#202020;box-shadow:0 18px 48px #0000005c}.skill-card:hover img,.skill-card:focus-within img{transform:translateY(-2px) scale(1.04);filter:saturate(1.12)}.projects{min-height:auto;background:transparent}.projects-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.project-card{position:relative;display:flex;min-height:100%;flex-direction:column;overflow:hidden;isolation:isolate;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 18px 46px #00000047;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;will-change:transform}.project-card:after{content:"";position:absolute;inset:0 0 auto;z-index:1;height:45%;background:linear-gradient(180deg,rgba(255,0,153,.2),rgba(255,158,0,.08) 42%,transparent 100%);opacity:.35;pointer-events:none;transition:opacity .25s ease}.project-card:hover,.project-card:focus-within{transform:translateY(-8px);border-color:#ff9e0061;box-shadow:0 28px 70px #00000075,0 0 30px #ff9e001a}.project-card:hover:after,.project-card:focus-within:after{opacity:1}.project-card img{width:100%;height:auto;aspect-ratio:16 / 10;object-fit:cover;border-bottom:1px solid var(--line);background:#0b0b0b;filter:saturate(.94) brightness(.92);transition:transform .55s ease,filter .35s ease}.project-card:hover img,.project-card:focus-within img{transform:scale(1.045);filter:saturate(1.08) brightness(1.05)}.project-content{position:relative;z-index:2;display:flex;flex:1;flex-direction:column;padding:1.15rem}.stack{width:fit-content;margin-bottom:.9rem;color:var(--orange);font-size:.73rem;line-height:1.4}.project-card h3{font-size:1.28rem;line-height:1.2}.project-card p:not(.stack){margin-top:.75rem;color:var(--muted);line-height:1.58}.project-links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:auto;padding-top:1.1rem}.project-links a{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .62rem;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:#ffffff09;color:var(--text);font-size:.9rem;font-weight:600;text-decoration:none;transition:transform .25s ease,border-color .25s ease,background .25s ease,color .25s ease}.project-links a i{color:var(--pink)}.project-links a:hover,.project-links a:focus-visible{transform:translateY(-2px);border-color:#ff9e0059;background:#ff9e001a;color:var(--yellow);outline:none}.contact{min-height:100vh;display:grid;align-items:center;padding:clamp(6rem,10vw,8rem) 0;background:transparent}.contact-panel{position:relative;max-width:820px;margin-inline:auto;padding:clamp(1.8rem,5vw,3rem);overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:radial-gradient(circle at 50% 0%,rgba(255,158,0,.12),transparent 52%),linear-gradient(180deg,#ffffff0e,#ffffff06);box-shadow:0 28px 76px #00000057,inset 0 1px #ffffff12}.contact-panel:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--gradient)}.contact .section-header{margin-inline:auto;margin-bottom:clamp(1.15rem,3vw,1.8rem);text-align:center}.contact .section-kicker,.contact .section-header p{margin-inline:auto}.contact-note{width:fit-content;margin:0 auto 1.45rem;padding:.52rem .75rem;border:1px solid rgba(255,158,0,.24);border-radius:8px;background:#ff9e0013;color:var(--orange);font-family:var(--mono);font-size:.82rem;line-height:1.4}.social-links{display:flex;justify-content:center;flex-wrap:wrap;gap:.85rem}.social-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-width:150px;min-height:3.35rem;padding:0 1.15rem;overflow:hidden;isolation:isolate;border:1px solid var(--line);border-radius:8px;background:#ffffff09;color:var(--text);font-weight:750;text-decoration:none;transition:transform .25s ease,border-color .25s ease,background .25s ease}.social-btn:before{content:"";position:absolute;inset:0;z-index:0;background:var(--social-gradient, var(--gradient));opacity:0;transition:opacity .25s ease}.social-btn i,.social-btn span{position:relative;z-index:1}.social-btn:hover,.social-btn:focus-visible{transform:translateY(-4px) scale(1.02);border-color:transparent;box-shadow:0 16px 38px #00000047;outline:none}.social-btn:hover:before,.social-btn:focus-visible:before{opacity:1}.social-btn.email{--social-gradient: linear-gradient(135deg, #0072ff, #00c6ff)}.social-btn.instagram{--social-gradient: linear-gradient(135deg, #f58529, #dd2a7b, #8134af)}.social-btn.linkedin{--social-gradient: linear-gradient(135deg, #0077b5, #00a0dc)}.social-btn.github{--social-gradient: linear-gradient(135deg, #333333, #24292e, #000000)}@keyframes moveGradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes bounce{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,10px)}}@keyframes fall{to{transform:translateY(110vh) rotate(650deg);opacity:0}}@media(max-width:980px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-grid{grid-template-columns:1fr}}@media(max-width:720px){html{scroll-padding-top:74px}.site-nav{top:10px;width:min(calc(100% - 2rem),470px);max-width:470px;justify-content:space-between;gap:0}.site-nav a{min-height:2.36rem;flex:1 1 0;gap:.24rem;padding:0 .32rem;font-size:.78rem}.site-nav a i{display:inline-block;font-size:.82rem}section:not(.hero)>.container,.hero-content{width:min(calc(100% - 2.5rem),560px)}.hero{padding-top:6.5rem}.hero-content{text-align:center}.eyebrow,.secret-hint,.next-preview,.hero-actions,.hero-facts{justify-content:center}.eyebrow:before{display:none}.hero-summary{margin-inline:auto}#code-bg{opacity:.34}.hero:before{background:linear-gradient(180deg,#0d0d0dc2,#0d0d0d80 42%,#0d0d0de6)}.next-preview{width:min(100%,360px);margin-inline:auto;text-align:center}.section-header,.section-header p:not(.section-kicker){max-width:100%}.projects-grid{grid-template-columns:1fr}.skills-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.skills-grid.compact{max-width:none}.skill-card{min-height:112px;padding:.9rem .5rem}.skill-card img{width:42px;height:42px}.skill-card span{font-size:.78rem;line-height:1.2;text-align:center}}@media(max-width:440px){.hero-content,section:not(.hero)>.container{width:min(calc(100% - 2.25rem),360px)}.site-nav a{gap:.18rem;padding:0 .2rem;font-size:.68rem}.site-nav a i{font-size:.76rem}.hero-actions .btn,.social-btn{width:100%}.about-stats{grid-template-columns:1fr}.skills-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.skill-card{min-height:96px;padding:.7rem .35rem}.skill-card img{width:34px;height:34px}.skill-card span{font-size:.67rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
