:root{--night: #090b10;--night-soft: #11151d;--glass: rgba(255, 255, 255, .065);--glass-strong: rgba(255, 255, 255, .105);--line: rgba(255, 255, 255, .14);--muted: rgba(235, 239, 235, .62);--text: #eef2ed;--lime: #d8ff52;--cyan: #75e6e0;--serif: Georgia, "Times New Roman", serif;--sans: "Trebuchet MS", "Segoe UI", sans-serif;--max-width: 1180px;--gutter: clamp(20px, 5vw, 72px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:var(--night);font-family:var(--sans);line-height:1.55;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.32;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 80%);mask-image:linear-gradient(to bottom,black,transparent 80%)}h1,h2,h3{margin:0;font-family:var(--serif);font-weight:400;line-height:1.05}p{max-width:64ch;margin:0 0 1em}a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--lime);outline-offset:4px}.wrap{position:relative;z-index:1;max-width:var(--max-width);margin:0 auto;padding:0 var(--gutter)}.nav{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);background:#090b10c2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav-inner{max-width:var(--max-width);margin:0 auto;padding:22px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px}.nav-mark{color:var(--text);font-size:.78rem;font-weight:700;letter-spacing:.14em}.nav-mark span{color:var(--lime)}.nav-links{display:flex;gap:clamp(14px,3vw,34px);margin:0;padding:0;list-style:none}.nav-links a{color:var(--muted);font-size:.82rem;letter-spacing:.04em;transition:color .25s ease}.nav-links a:hover,.nav-links a.active{color:var(--lime)}.footer{margin-top:110px;border-top:1px solid var(--line)}.footer-inner{max-width:var(--max-width);margin:0 auto;padding:28px var(--gutter) 42px;display:flex;justify-content:space-between;gap:14px;color:var(--muted);font-size:.82rem}.footer a{color:var(--text)}.hero{min-height:min(760px,calc(100vh - 76px));padding:110px 0 90px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);align-items:center;gap:clamp(38px,8vw,110px)}.hero-eyebrow,.about-eyebrow,.contact-eyebrow{display:flex;align-items:center;gap:11px;margin-bottom:26px;color:var(--lime);font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.hero-eyebrow:before,.about-line,.contact-line{content:"";display:block;width:38px;height:1px;background:currentColor}.hero h1{max-width:10ch;font-size:clamp(3.6rem,8vw,7.8rem);letter-spacing:-.055em}.hero-lede{max-width:47ch;margin-top:30px;color:var(--muted);font-size:1.06rem}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.btn{display:inline-flex;align-items:center;gap:18px;padding:13px 17px;border:1px solid var(--line);font-size:.8rem;transition:transform .25s ease,background .25s ease,border-color .25s ease}.btn span{color:var(--lime);font-size:1.1rem}.btn-primary{color:var(--night);border-color:var(--lime);background:var(--lime)}.btn-primary span{color:var(--night)}.btn:hover{transform:translateY(-3px);border-color:var(--lime)}.btn-ghost:hover{background:var(--glass-strong)}.hero-art{width:100%;border:1px solid var(--line);border-radius:2px;background:var(--glass);box-shadow:20px 20px #d8ff5214}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding-bottom:15px;margin:40px 0 20px;border-bottom:1px solid var(--line)}.section-head h2{font-size:clamp(1.7rem,3vw,2.5rem)}.count{color:var(--muted);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.project-row{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:22px;padding:25px 14px;border-bottom:1px solid var(--line);transition:background .25s ease,padding .25s ease}.project-row:hover{padding-left:22px;background:var(--glass)}.project-row .index{color:var(--lime);font-family:var(--serif);font-size:1.3rem}.project-row h3{margin-bottom:5px;font-size:1.45rem}.project-row .meta,.project-row .go{color:var(--muted);font-size:.82rem}.project-row .go{color:var(--lime);white-space:nowrap}.projects-page-wrapper{padding-top:42px;position:relative}.grid-projects{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.card-project{position:relative;overflow:hidden;border:1px solid var(--line);background:var(--glass);transition:transform .35s ease,border-color .35s ease}.card-project:hover{transform:translateY(-7px);border-color:#d8ff5299}.card-project__figure{aspect-ratio:16 / 10;margin:0;overflow:hidden;border-bottom:1px solid var(--line);background:var(--night-soft)}.card-project__figure img{width:100%;height:100%;object-fit:cover;opacity:.85;transition:transform .5s ease,opacity .5s ease}.card-project:hover img{transform:scale(1.04);opacity:1}.card-project__body{padding:23px}.card-project h3{font-size:1.8rem}.card-project__summary{margin:12px 0 18px;color:var(--muted);font-size:.92rem}.card-project__tags,.tags{display:flex;flex-wrap:wrap;gap:7px}.tag{padding:5px 9px;border:1px solid var(--line);color:var(--muted);font-size:.7rem;letter-spacing:.04em}.fluid-orb{position:fixed;z-index:-1;width:280px;height:280px;border-radius:50%;filter:blur(80px);opacity:.13;pointer-events:none}.fluid-orb--cyan{top:20%;left:0;background:var(--cyan)}.fluid-orb--purple{right:0;bottom:15%;background:var(--lime)}.detail-head{padding:72px 0 28px}.detail-head .back{display:inline-block;margin-bottom:26px;color:var(--lime);font-size:.8rem}.detail-head h1{font-size:clamp(3rem,7vw,6.5rem)}.detail-meta{display:flex;flex-wrap:wrap;gap:30px;margin-top:28px;color:var(--muted);font-size:.78rem}.detail-meta strong{display:block;margin-bottom:4px;color:var(--text);font-family:var(--sans);font-size:.85rem}.detail-art{width:100%;margin:26px 0 46px;border:1px solid var(--line);background:var(--glass)}.detail-body{max-width:68ch;color:var(--muted);font-size:1.04rem}.detail-body>p{color:var(--text);font-family:var(--serif);font-size:1.55rem;line-height:1.25}.detail-body h2{margin:44px 0 12px;color:var(--text);font-size:1.7rem}.detail-nav{display:flex;justify-content:space-between;gap:20px;margin-top:70px;padding-top:22px;border-top:1px solid var(--line);color:var(--lime);font-size:.85rem}.about-page{position:relative;padding-top:30px}.about-hero{display:grid;grid-template-columns:minmax(210px,.45fr) 1fr;gap:clamp(38px,8vw,110px);padding:70px 0 90px}.about-avatar-card,.skills-glass-card,.timeline-glass-card{border:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.about-avatar-card{position:relative;align-self:start;padding:12px}.avatar-inner{aspect-ratio:1;display:grid;place-items:center;background:radial-gradient(circle at 35% 25%,rgba(216,255,82,.36),transparent 42%),#18201b;overflow:hidden}.avatar-inner .frame{width:75%;opacity:.9}.avatar-label,.skills-header{display:flex;justify-content:space-between;padding:14px 2px 3px;color:var(--muted);font-size:.68rem;letter-spacing:.14em}.about-intro h1{max-width:11ch;font-size:clamp(3rem,6vw,6rem);letter-spacing:-.05em}.about-intro h1 span{color:var(--lime)}.about-copy{margin-top:28px;color:var(--muted)}.skills-glass-card{margin-top:35px;padding:16px 20px 22px}.skills-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 26px;margin:12px 0 0;padding:0;list-style:none}.skills-list li{display:flex;gap:12px;padding:11px 0;border-top:1px solid var(--line);font-size:.86rem}.skill-number{color:var(--lime)}.about-background{padding-bottom:20px}.about-section-head{align-items:end}.about-section-head h2{margin-top:12px}.about-section-head>p{margin:0;color:var(--muted);font-size:.85rem}.timeline-glass-card{position:relative;padding:20px 28px}.timeline-row{display:grid;grid-template-columns:90px 18px 1fr;gap:18px;position:relative;padding:22px 0}.timeline-year{color:var(--lime);font-family:var(--serif);font-size:1.3rem}.timeline-marker{position:relative;border-left:1px solid var(--line)}.timeline-marker span{position:absolute;top:8px;left:-5px;width:9px;height:9px;border:2px solid var(--lime);border-radius:50%;background:var(--night)}.timeline-content{padding-bottom:6px}.timeline-index{color:var(--muted);font-size:.68rem;letter-spacing:.1em}.timeline-content h3{margin:4px 0 7px;font-size:1.3rem}.timeline-content p{margin:0;color:var(--muted);font-size:.9rem}.contact-page{position:relative;min-height:100vh;overflow:hidden}.contact-background{min-height:100vh;padding:90px 0;display:flex;align-items:center;background:radial-gradient(circle at 10% 20%,rgba(117,230,224,.12),transparent 32%),radial-gradient(circle at 90% 80%,rgba(216,255,82,.09),transparent 34%)}.contact-container{position:relative;z-index:1;width:100%;max-width:var(--max-width);margin:auto;padding:0 var(--gutter);display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:clamp(40px,8vw,120px);align-items:center}.contact-intro h1{max-width:8ch;color:var(--text);font-size:clamp(3.7rem,7vw,7rem);letter-spacing:-.06em}.contact-intro h1 span{color:var(--lime)}.contact-description{max-width:39ch;margin:28px 0 34px;color:var(--muted)}.contact-links{display:grid;gap:10px}.contact-link-card{display:flex;align-items:center;gap:13px;padding:13px;border:1px solid var(--line);background:var(--glass);transition:transform .25s ease,background .25s ease,border-color .25s ease}.contact-link-card:hover{transform:translate(6px);border-color:var(--lime);background:var(--glass-strong)}.contact-link-icon,.form-icon{display:grid;flex:0 0 auto;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:11px;color:var(--lime);background:#ffffff12}.contact-link-content{display:grid;gap:2px;min-width:0}.contact-link-content span{color:var(--muted);font-size:.67rem;letter-spacing:.12em;text-transform:uppercase}.contact-link-content strong{overflow-wrap:anywhere;font-size:.85rem;font-weight:500}.contact-arrow{margin-left:auto;color:var(--lime)}.contact-glass-card{position:relative;padding:clamp(22px,4vw,40px);border:1px solid rgba(255,255,255,.19);background:linear-gradient(135deg,#ffffff24,#ffffff0b);box-shadow:0 25px 80px #00000040;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.form-header{display:flex;align-items:center;gap:14px;margin-bottom:30px}.form-header h2{margin-bottom:4px;font-size:1.3rem}.form-header p,.form-note{margin:0;color:var(--muted);font-size:.75rem}.glass-field{margin-bottom:19px}.glass-field label{display:flex;align-items:center;gap:7px;margin-bottom:8px;color:var(--muted);font-size:.75rem}.glass-field input,.glass-field textarea{width:100%;padding:12px 0;color:var(--text);border:0;border-bottom:1px solid var(--line);outline:0;background:transparent;resize:vertical}.glass-field input:focus,.glass-field textarea:focus{border-color:var(--lime)}.glass-field input::placeholder,.glass-field textarea::placeholder{color:#ebefeb47}.glass-submit{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:8px;padding:14px 16px;color:var(--night);border:1px solid var(--lime);background:var(--lime);cursor:pointer;font-size:.8rem;transition:transform .25s ease,background .25s ease}.glass-submit:hover{transform:translateY(-3px);background:#e7ff9a}.form-note{margin-top:16px;line-height:1.5}.contact-glow{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}.contact-glow-one{top:18%;left:12%;width:140px;height:140px;border:1px solid rgba(117,230,224,.28)}.contact-glow-two{right:10%;bottom:14%;width:220px;height:220px;border:1px solid rgba(216,255,82,.16)}.reveal,.reveal-stagger>*{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible,.reveal-stagger>*.is-visible{opacity:1;transform:none}.reveal-stagger>*:nth-child(2){transition-delay:.08s}.reveal-stagger>*:nth-child(3){transition-delay:.16s}.reveal-stagger>*:nth-child(4){transition-delay:.24s}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal,.reveal-stagger>*{opacity:1;transform:none}}@media (max-width: 760px){.nav-inner{align-items:flex-start;flex-direction:column;gap:12px}.hero,.about-hero,.contact-container{grid-template-columns:1fr}.hero{padding-top:74px}.hero h1{max-width:12ch}.hero-art{max-width:500px}.grid-projects{grid-template-columns:1fr}.project-row{grid-template-columns:38px 1fr}.project-row .go{grid-column:2}.about-avatar-card{max-width:320px}.about-intro{order:-1}.contact-background{padding:70px 0}.contact-intro h1{max-width:10ch}.footer-inner{align-items:flex-start;flex-direction:column}}@media (max-width: 480px){.nav-links{width:100%;justify-content:space-between;gap:8px}.nav-links a{font-size:.72rem}.skills-list{grid-template-columns:1fr}.timeline-glass-card{padding:12px 16px}.timeline-row{grid-template-columns:67px 12px 1fr;gap:10px}.timeline-year{font-size:1rem}.detail-nav{flex-direction:column}}
