@charset "UTF-8";:root{--bg:#080610;--bg2:#0d0a1a;--surface:#110e22;--surface2:#1a1530;--border:rgba(180,140,255,0.12);--glow:#b48cff;--glow2:#e8aaff;--accent:#c9a0ff;--accent2:#f0c4ff;--rose:#ff8fa3;--teal:#7fffd4;--text:#e8deff;--text-muted:rgba(232,222,255,0.72);--text-dim:rgba(232,222,255,0.48);--font-display:Cormorant Garamond,serif;--font-mono:DM Mono,monospace}*,:after,:before{-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-mono);font-size:13px;font-weight:300;letter-spacing:0.03em;line-height:1.7;overflow-x:hidden;cursor:none}body:before{content:"";position:fixed;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='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");opacity:0.025;z-index:1;pointer-events:none}.skip-link{position:absolute;top:-100px;left:16px;background:var(--glow);color:var(--bg);padding:8px 16px;font-size:12px;letter-spacing:0.1em;z-index:10000;-webkit-transition:top 0.2s;transition:top 0.2s;text-decoration:none}.skip-link:focus{top:16px}:focus-visible{outline:2px solid var(--glow);outline-offset:4px;border-radius:2px}:focus:not(:focus-visible){outline:none}@media (prefers-reduced-motion:reduce){*,:after,:before{-webkit-animation-duration:0.01ms!important;animation-duration:0.01ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important;-webkit-transition-duration:0.01ms!important;transition-duration:0.01ms!important}html{scroll-behavior:auto}.cursor,.cursor-ring{display:none}body{cursor:auto}}.container,.container-wide{position:relative;z-index:2;max-width:1100px;margin:0 auto;padding:0 40px}.divider{width:100%;height:1px;background:-webkit-gradient(linear,left top,right top,from(transparent),color-stop(var(--border)),to(transparent));background:linear-gradient(to right,transparent,var(--border),transparent);position:relative;z-index:2}@-webkit-keyframes fadeUp{0%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeUp{0%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes drift1{to{-webkit-transform:translate(80px,60px);transform:translate(80px,60px)}}@keyframes drift1{to{-webkit-transform:translate(80px,60px);transform:translate(80px,60px)}}@-webkit-keyframes drift2{to{-webkit-transform:translate(-60px,-80px);transform:translate(-60px,-80px)}}@keyframes drift2{to{-webkit-transform:translate(-60px,-80px);transform:translate(-60px,-80px)}}@-webkit-keyframes drift3{to{-webkit-transform:translate(40px,-40px);transform:translate(40px,-40px)}}@keyframes drift3{to{-webkit-transform:translate(40px,-40px);transform:translate(40px,-40px)}}@-webkit-keyframes orbPulse{0%,to{-webkit-box-shadow:0 0 60px rgba(140,80,255,0.1),inset 0 0 60px rgba(140,80,255,0.05);box-shadow:0 0 60px rgba(140,80,255,0.1),inset 0 0 60px rgba(140,80,255,0.05)}50%{-webkit-box-shadow:0 0 100px rgba(180,140,255,0.2),inset 0 0 80px rgba(180,140,255,0.08);box-shadow:0 0 100px rgba(180,140,255,0.2),inset 0 0 80px rgba(180,140,255,0.08)}}@keyframes orbPulse{0%,to{-webkit-box-shadow:0 0 60px rgba(140,80,255,0.1),inset 0 0 60px rgba(140,80,255,0.05);box-shadow:0 0 60px rgba(140,80,255,0.1),inset 0 0 60px rgba(140,80,255,0.05)}50%{-webkit-box-shadow:0 0 100px rgba(180,140,255,0.2),inset 0 0 80px rgba(180,140,255,0.08);box-shadow:0 0 100px rgba(180,140,255,0.2),inset 0 0 80px rgba(180,140,255,0.08)}}@-webkit-keyframes float1{0%,to{-webkit-transform:translateY(0);transform:translateY(0)}50%{-webkit-transform:translateY(-8px);transform:translateY(-8px)}}@keyframes float1{0%,to{-webkit-transform:translateY(0);transform:translateY(0)}50%{-webkit-transform:translateY(-8px);transform:translateY(-8px)}}@-webkit-keyframes float2{0%,to{-webkit-transform:translateY(0);transform:translateY(0)}50%{-webkit-transform:translateY(8px);transform:translateY(8px)}}@keyframes float2{0%,to{-webkit-transform:translateY(0);transform:translateY(0)}50%{-webkit-transform:translateY(8px);transform:translateY(8px)}}@-webkit-keyframes pulse{0%,to{opacity:1}50%{opacity:0.4}}@keyframes pulse{0%,to{opacity:1}50%{opacity:0.4}}.reveal{opacity:0;-webkit-transform:translateY(24px);transform:translateY(24px);-webkit-transition:opacity 0.7s ease,-webkit-transform 0.7s ease;transition:opacity 0.7s ease,-webkit-transform 0.7s ease;transition:opacity 0.7s ease,transform 0.7s ease;transition:opacity 0.7s ease,transform 0.7s ease,-webkit-transform 0.7s ease}.reveal.visible{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}.section-label{font-size:10px;letter-spacing:0.3em;text-transform:uppercase;color:var(--glow);margin-bottom:12px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:12px}.section-label:before{content:"";display:block;width:20px;height:1px;background:var(--glow)}.btn{display:inline-block;padding:12px 28px;font-family:var(--font-mono);font-size:11px;letter-spacing:0.15em;text-transform:uppercase;text-decoration:none;border-radius:2px;-webkit-transition:all 0.3s;transition:all 0.3s;cursor:none}.btn-primary{background:var(--glow);color:var(--bg);font-weight:400;-webkit-box-shadow:0 0 20px rgba(180,140,255,0.3);box-shadow:0 0 20px rgba(180,140,255,0.3)}.btn-primary:hover{background:var(--glow2);-webkit-box-shadow:0 0 40px rgba(180,140,255,0.5);box-shadow:0 0 40px rgba(180,140,255,0.5);-webkit-transform:translateY(-1px);transform:translateY(-1px)}.btn-ghost{border:1px solid var(--border);color:var(--text-muted)}.btn-ghost:hover{border-color:var(--glow);color:var(--accent);-webkit-box-shadow:0 0 20px rgba(180,140,255,0.1);box-shadow:0 0 20px rgba(180,140,255,0.1)}.cursor{position:fixed;width:8px;height:8px;background:var(--glow2);border-radius:50%;pointer-events:none;z-index:9999;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition:-webkit-transform 0.1s ease;transition:-webkit-transform 0.1s ease;transition:transform 0.1s ease;transition:transform 0.1s ease,-webkit-transform 0.1s ease;-webkit-box-shadow:0 0 12px var(--glow2),0 0 24px var(--glow);box-shadow:0 0 12px var(--glow2),0 0 24px var(--glow)}.cursor-ring{position:fixed;width:36px;height:36px;border:1px solid rgba(180,140,255,0.4);border-radius:50%;pointer-events:none;z-index:9998;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition:all 0.15s ease;transition:all 0.15s ease}#stars{position:fixed;inset:0;z-index:0;pointer-events:none}.ambient{position:fixed;border-radius:50%;-webkit-filter:blur(80px);filter:blur(80px);pointer-events:none;z-index:0}.ambient-1{width:600px;height:600px;background:radial-gradient(circle,rgba(140,80,255,0.12) 0%,transparent 70%);top:-200px;left:-200px;-webkit-animation:drift1 20s ease-in-out infinite alternate;animation:drift1 20s ease-in-out infinite alternate}.ambient-2{width:500px;height:500px;background:radial-gradient(circle,rgba(232,170,255,0.08) 0%,transparent 70%);bottom:0;right:-100px;-webkit-animation:drift2 25s ease-in-out infinite alternate;animation:drift2 25s ease-in-out infinite alternate}.ambient-3{width:300px;height:300px;background:radial-gradient(circle,rgba(127,255,212,0.05) 0%,transparent 70%);top:50%;left:50%;-webkit-animation:drift3 18s ease-in-out infinite alternate;animation:drift3 18s ease-in-out infinite alternate}nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:24px 40px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:-webkit-gradient(linear,left top,left bottom,from(rgba(8,6,16,0.9)),to(transparent));background:linear-gradient(to bottom,rgba(8,6,16,0.9),transparent);backdrop-filter:blur(10px)}.nav-logo{font-family:var(--font-display);font-size:18px;font-weight:300;letter-spacing:0.15em;color:var(--accent2);text-decoration:none}.nav-links{display:-webkit-box;display:-ms-flexbox;display:flex;gap:32px;list-style:none}.nav-links a{color:var(--text-muted);text-decoration:none;font-size:11px;letter-spacing:0.15em;text-transform:uppercase;-webkit-transition:color 0.3s;transition:color 0.3s}.nav-links a:hover{color:var(--accent2)}.nav-back{font-size:11px;letter-spacing:0.15em;text-transform:uppercase;color:var(--text-muted);text-decoration:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;-webkit-transition:color 0.3s;transition:color 0.3s}.nav-back:before{content:"←"}.nav-back:hover{color:var(--accent2)}footer{position:relative;z-index:2;padding:40px 0;border-top:1px solid var(--border)}.footer-inner{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.footer-copy{font-size:10px;letter-spacing:0.1em;color:var(--text-dim)}.footer-name{font-family:var(--font-display);font-size:14px;color:var(--text-muted);letter-spacing:0.1em}@media (max-width:768px){nav{padding:20px 24px}.container,.container-wide{padding:0 24px}.footer-inner{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:16px;text-align:center}}section{padding:120px 0;position:relative;z-index:2}.section-header{margin-bottom:64px}.section-title{font-family:var(--font-display);font-size:clamp(36px,4vw,52px);font-weight:300;line-height:1.1;color:var(--text)}.section-title em{font-style:italic;color:var(--accent)}.hero{min-height:100vh;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding-top:80px;position:relative}.hero-inner{display:-ms-grid;display:grid;-ms-grid-columns:1fr 80px 1fr;grid-template-columns:1fr 1fr;gap:80px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%}.hero-text{position:relative}.hero-eyebrow{font-size:10px;letter-spacing:0.3em;text-transform:uppercase;color:var(--glow);margin-bottom:20px;opacity:0;-webkit-animation:fadeUp 0.8s 0.2s forwards;animation:fadeUp 0.8s 0.2s forwards}.hero-eyebrow span{display:inline-block;width:32px;height:1px;background:var(--glow);vertical-align:middle;margin-right:12px}.hero-name{font-family:var(--font-display);font-size:clamp(64px,7vw,96px);font-weight:300;line-height:0.95;letter-spacing:-0.01em;color:var(--text);margin-bottom:24px;opacity:0;-webkit-animation:fadeUp 0.8s 0.4s forwards;animation:fadeUp 0.8s 0.4s forwards}.hero-name em{font-style:italic;color:var(--accent);display:block}.hero-role{font-size:11px;letter-spacing:0.2em;text-transform:uppercase;color:var(--text-muted);margin-bottom:32px;opacity:0;-webkit-animation:fadeUp 0.8s 0.6s forwards;animation:fadeUp 0.8s 0.6s forwards}.hero-desc{font-size:13px;color:var(--text-muted);max-width:420px;line-height:1.8;margin-bottom:48px;opacity:0;-webkit-animation:fadeUp 0.8s 0.8s forwards;animation:fadeUp 0.8s 0.8s forwards}.hero-cta{display:-webkit-box;display:-ms-flexbox;display:flex;gap:16px;-ms-flex-wrap:wrap;flex-wrap:wrap;opacity:0;-webkit-animation:fadeUp 0.8s 1s forwards;animation:fadeUp 0.8s 1s forwards}.hero-visual{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;opacity:0;-webkit-animation:fadeIn 1.2s 0.6s forwards;animation:fadeIn 1.2s 0.6s forwards}.orb{width:380px;height:380px;border-radius:50%;background:radial-gradient(circle at 35% 35%,rgba(200,160,255,0.15) 0%,rgba(140,80,255,0.08) 40%,rgba(8,6,16,0) 70%);border:1px solid rgba(180,140,255,0.15);position:relative;-webkit-animation:orbPulse 6s ease-in-out infinite;animation:orbPulse 6s ease-in-out infinite}.orb:before{content:"";position:absolute;inset:20px;border-radius:50%;border:1px solid rgba(180,140,255,0.08)}.orb:after{content:"";position:absolute;inset:50px;border-radius:50%;border:1px solid rgba(180,140,255,0.05)}.orb-inner-text{position:absolute;inset:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center;gap:8px}.orb-stat{font-family:var(--font-display);font-size:52px;font-weight:300;color:var(--accent2);line-height:1}.orb-label{font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--text-muted)}.orb-divider{width:40px;height:1px;background:var(--border);margin:4px auto}.floating-tag{position:absolute;background:rgba(17,14,34,0.9);border:1px solid var(--border);padding:8px 14px;border-radius:4px;font-size:10px;letter-spacing:0.1em;color:var(--text-muted);backdrop-filter:blur(10px)}.tag-1{top:40px;right:-20px;color:var(--teal);border-color:rgba(127,255,212,0.2);-webkit-animation:float1 4s ease-in-out infinite;animation:float1 4s ease-in-out infinite}.tag-2{bottom:60px;left:-30px;color:var(--rose);border-color:rgba(255,143,163,0.2);-webkit-animation:float2 5s ease-in-out infinite;animation:float2 5s ease-in-out infinite}.tag-3{top:50%;right:-50px;color:var(--accent);border-color:rgba(180,140,255,0.2);animation:float1 6s ease-in-out infinite reverse}.skills-grid{display:-ms-grid;display:grid;-ms-grid-columns:1fr 1px 1fr 1px 1fr;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border:1px solid var(--border)}.skill-cell{background:var(--bg);padding:32px;-webkit-transition:background 0.3s;transition:background 0.3s}.skill-cell:hover{background:var(--surface)}.skill-cell-label{font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--glow);margin-bottom:16px}.skill-tags{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:8px}.skill-tag{font-size:11px;color:var(--text-muted);padding:4px 10px;border:1px solid var(--border);border-radius:2px;-webkit-transition:all 0.3s;transition:all 0.3s}.skill-tag:hover{color:var(--accent2);border-color:rgba(180,140,255,0.3)}.work-grid{display:-ms-grid;display:grid;-ms-grid-columns:1fr 24px 1fr;grid-template-columns:1fr 1fr;gap:24px}.work-card{background:var(--surface);border:1px solid var(--border);padding:40px;position:relative;overflow:hidden;-webkit-transition:all 0.4s;transition:all 0.4s;cursor:none}.work-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(180,140,255,0.06) 0%,transparent 60%);opacity:0;-webkit-transition:opacity 0.3s;transition:opacity 0.3s}.work-card:hover{border-color:rgba(180,140,255,0.25);-webkit-transform:translateY(-2px);transform:translateY(-2px);-webkit-box-shadow:0 20px 60px rgba(0,0,0,0.4);box-shadow:0 20px 60px rgba(0,0,0,0.4)}.work-card:hover:before{opacity:1}.work-card.featured{grid-column:1/-1;display:-ms-grid;display:grid;-ms-grid-columns:1fr 48px 1fr;grid-template-columns:1fr 1fr;gap:48px;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.work-number{font-size:10px;letter-spacing:0.2em;color:var(--text-dim);margin-bottom:20px}.work-title{font-family:var(--font-display);font-size:28px;font-weight:300;color:var(--text);margin-bottom:12px;line-height:1.2}.work-desc{font-size:12px;color:var(--text-muted);line-height:1.8;margin-bottom:24px}.work-tags{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:8px;margin-bottom:28px}.work-tag{font-size:10px;letter-spacing:0.1em;color:var(--accent);border:1px solid rgba(180,140,255,0.2);padding:3px 10px;border-radius:2px}.work-link{font-size:11px;letter-spacing:0.15em;text-transform:uppercase;color:var(--text-muted);text-decoration:none;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;-webkit-transition:color 0.3s;transition:color 0.3s;position:relative}.work-link:after{content:"→"}.work-link:hover{color:var(--accent2)}.work-visual{aspect-ratio:4/3;background:var(--surface2);border:1px solid var(--border);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;overflow:hidden}.work-visual img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.work-visual-glow{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(140,80,255,0.06) 0%,transparent 70%)}.work-visual-placeholder{font-family:var(--font-display);font-size:64px;font-weight:300;color:var(--border);font-style:italic}.exp-list{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.exp-item{display:-ms-grid;display:grid;-ms-grid-columns:200px 48px 1fr;grid-template-columns:200px 1fr;gap:48px;padding:48px 0;border-bottom:1px solid var(--border)}.exp-item:first-child{border-top:1px solid var(--border)}.exp-meta{padding-top:4px}.exp-period{font-size:10px;letter-spacing:0.15em;color:var(--text-dim);margin-bottom:8px;text-transform:uppercase}.exp-company{font-family:var(--font-display);font-size:20px;font-weight:300;color:var(--accent);margin-bottom:4px}.exp-location{font-size:10px;color:var(--text-dim);letter-spacing:0.1em}.exp-role{font-size:11px;letter-spacing:0.15em;text-transform:uppercase;color:var(--text-muted);margin-bottom:20px}.exp-bullets{list-style:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:10px}.exp-bullets li{font-size:12px;color:var(--text-muted);line-height:1.7;padding-left:16px;position:relative}.exp-bullets li:before{content:"◇";position:absolute;left:0;top:5px;color:var(--glow);font-size:8px}.contact-inner{display:-ms-grid;display:grid;-ms-grid-columns:1fr 80px 1fr;grid-template-columns:1fr 1fr;gap:80px;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.contact-title{font-family:var(--font-display);font-size:clamp(48px,5vw,72px);font-weight:300;line-height:1;color:var(--text);margin-bottom:24px}.contact-title em{font-style:italic;color:var(--accent);display:block}.contact-sub{font-size:12px;color:var(--text-muted);line-height:1.8;margin-bottom:40px}.contact-links{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:16px}.contact-link{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:16px;text-decoration:none;color:var(--text-muted);font-size:12px;letter-spacing:0.05em;padding:16px 20px;border:1px solid var(--border);-webkit-transition:all 0.3s;transition:all 0.3s}.contact-link:hover{border-color:rgba(180,140,255,0.3);color:var(--accent2);background:rgba(180,140,255,0.04)}.contact-link-icon{width:32px;height:32px;border:1px solid var(--border);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:14px;-ms-flex-negative:0;flex-shrink:0}@media (max-width:768px){.hero{padding-top:120px}.hero-inner{-ms-grid-columns:1fr;grid-template-columns:1fr;gap:60px}.hero-visual{display:none}.skills-grid{-ms-grid-columns:1fr;grid-template-columns:1fr}.work-grid{-ms-grid-columns:1fr;grid-template-columns:1fr}.work-card.featured{-ms-grid-columns:1fr;grid-template-columns:1fr}.exp-item{-ms-grid-columns:1fr;grid-template-columns:1fr;gap:16px}.contact-inner{-ms-grid-columns:1fr;grid-template-columns:1fr;gap:48px}}