*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0e0e0e;--surface:#161616;--border:#2a2a2a;--text:#e8e2d9;--muted:#666;--accent:#c8a96e;--accent2:#7b9e87;--font-display:"Playfair Display", Georgia, serif;--font-mono:"DM Mono", monospace}html{scroll-behavior:smooth;overflow-x:clip}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (hover:hover) and (pointer:fine){html{scrollbar-width:none}html::-webkit-scrollbar{display:none}}.glow-scrollbar{z-index:150;width:14px;position:fixed;top:0;bottom:0;right:0}.glow-scrollbar-thumb{background:linear-gradient(180deg, #e6cd97 0%, var(--accent) 50%, #a8884f 100%);cursor:grab;border-radius:999px;width:6px;transition:width .2s,right .2s;position:absolute;top:0;right:3px}.glow-scrollbar:hover .glow-scrollbar-thumb{width:8px;right:2px}.glow-scrollbar-thumb:active{cursor:grabbing}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:linear-gradient(180deg, #e6cd97, var(--accent) 50%, #a8884f);background-clip:padding-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-corner{background:0 0}@supports not selector(::-webkit-scrollbar){html{scrollbar-color:var(--accent) transparent}.modal-content,.gallery-thumbs{scrollbar-width:thin}}body{background:var(--bg);color:var(--text);font-family:var(--font-mono);font-size:14px;line-height:1.7;overflow-x:hidden}.particles-bg{z-index:-1;pointer-events:none;width:100%;height:100%;animation:1.2s forwards particles-in;position:fixed;top:0;left:0}@keyframes particles-in{0%{opacity:0}to{opacity:1}}.glass{-webkit-backdrop-filter:blur(14px)saturate(170%);backdrop-filter:blur(14px)saturate(170%);background:linear-gradient(#ffffff14 0%,#ffffff04 55%,#ffffff08 100%),#12121252;box-shadow:inset 0 1px #ffffff38,inset 0 -1px #ffffff0d,inset 0 0 20px #ffffff09,0 10px 34px #00000061}.glass:after{content:"";border-radius:inherit;pointer-events:none;-webkit-mask-composite:xor;background:linear-gradient(135deg,#ffffff6b,#ffffff0f 35%,#ffffff08 65%,#c8a96e66);padding:1px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.glass.refract-nav{-webkit-backdrop-filter:blur(6px)saturate(170%)url(#glass-nav);backdrop-filter:blur(6px)saturate(170%)url(#glass-nav)}.glass.refract-menu{-webkit-backdrop-filter:blur(8px)saturate(170%)url(#glass-menu);backdrop-filter:blur(8px)saturate(170%)url(#glass-menu)}[data-perf=low] .glass{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}nav{z-index:100;border-radius:999px;justify-content:space-between;align-items:center;width:min(1180px,100% - 32px);margin:0 auto;padding:.45rem .5rem .45rem 1.5rem;transition:background-color .3s;display:flex;position:fixed;top:14px;left:0;right:0}nav.scrolled{background-color:#0e0e0e9e}.nav-logo{font-family:var(--font-display);color:var(--accent);letter-spacing:.03em;white-space:nowrap;text-shadow:0 1px 3px #00000073;font-size:1.15rem;text-decoration:none}.nav-links{gap:.15rem;list-style:none;display:flex}.nav-links li{position:relative}.nav-links a{z-index:1;color:#e8e2d99e;letter-spacing:.1em;text-transform:uppercase;text-shadow:0 1px 3px #00000073;border-radius:999px;padding:.6rem 1rem;font-size:12px;text-decoration:none;transition:color .2s;display:block;position:relative}.nav-links a:hover,.nav-links a.active{color:var(--text)}.nav-underline{background:var(--accent);pointer-events:none;height:1px;position:absolute;bottom:.3rem;left:1rem;right:1rem}.nav-toggle{cursor:pointer;background:0 0;border:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;display:none}.nav-toggle span{background:var(--text);width:20px;height:1px;transition:transform .3s;display:block}.nav-toggle.open span:first-child{transform:translateY(3.5px)rotate(45deg)}.nav-toggle.open span:last-child{transform:translateY(-3.5px)rotate(-45deg)}.mobile-menu{z-index:99;transform-origin:top;background-color:#0e0e0e8c;border-radius:24px;padding:.5rem 1.4rem;list-style:none;position:fixed;top:76px;left:10px;right:10px}.mobile-menu a{color:var(--text);letter-spacing:.15em;text-transform:uppercase;border-bottom:1px solid #ffffff14;padding:.95rem 0;font-size:13px;text-decoration:none;display:block}.mobile-menu li:last-child a{border-bottom:none}.mobile-menu a.active{color:var(--accent)}@media (width<=960px){nav{width:calc(100% - 20px);padding:.3rem .3rem .3rem 1.2rem;top:10px}.nav-links{display:none}.nav-toggle{display:flex}}#hero{grid-template-columns:1fr 1fr;align-items:center;min-height:100svh;padding:8rem 3rem 4rem;display:grid;position:relative;overflow:hidden}.hero-text{max-width:520px}.hero-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);align-items:center;gap:.75rem;margin-bottom:1.5rem;font-size:11px;display:flex}.hero-eyebrow:before{content:"";background:var(--accent);width:32px;height:1px;display:block}h1{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:1.5rem;font-size:clamp(3rem,5vw,5rem);font-weight:700;line-height:1.05}h1 em{color:var(--accent);font-style:italic}.hero-desc{color:var(--muted);max-width:380px;margin-bottom:2.5rem;font-size:18px;line-height:1.8}.hero-cta{flex-wrap:wrap;gap:1rem;display:flex}.hero-currently{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.4rem .6rem;margin-top:2.5rem;font-size:12px;display:flex}.hero-currently-label{letter-spacing:.2em;text-transform:uppercase;color:var(--text);font-size:11px}.status-dot{background:var(--accent2);border-radius:50%;flex-shrink:0;width:7px;height:7px;position:relative}.status-dot:after{content:"";border-radius:inherit;background:var(--accent2);animation:2.4s ease-out infinite pulse;position:absolute;inset:0}@keyframes pulse{0%{opacity:.6;transform:scale(1)}70%,to{opacity:0;transform:scale(3.3)}}@media (prefers-reduced-motion:reduce){.status-dot:after{opacity:0;animation:none}}.avatar-frame{z-index:1;aspect-ratio:5/6;border-radius:24px;width:min(500px,100%);margin:0 auto;position:relative}.avatar-frame:before{content:"";z-index:-1;filter:blur(14px);opacity:.8;background:linear-gradient(135deg,#c8a96e 0%,#7b9e87 100%);border-radius:26px;transition:opacity .3s;position:absolute;inset:-4px}.avatar-frame:hover:before{opacity:1}.profile-img{object-fit:cover;z-index:2;border:2px solid var(--bg);border-radius:24px;width:100%;height:100%;display:block;position:relative}.btn-primary{border:1px solid var(--accent);color:var(--accent);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;padding:.75rem 2rem;font-size:12px;text-decoration:none;transition:background .2s,color .2s}.btn-primary:hover{background:var(--accent);color:var(--bg)}.btn-ghost{border:1px solid var(--border);color:var(--muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;padding:.75rem 2rem;font-size:12px;text-decoration:none;transition:border-color .2s,color .2s}.btn-ghost:hover{border-color:var(--text);color:var(--text)}.hero-visual{justify-content:center;align-items:center;padding-left:2rem;display:flex;position:relative}.deco-line{background:linear-gradient(to bottom, transparent, var(--accent), transparent);width:1px;height:200px;position:absolute;top:2rem;right:-1.5rem}section{border-top:1px solid var(--border);padding:6rem 3rem}.section-label{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);align-items:center;gap:.75rem;margin-bottom:3rem;font-size:11px;display:flex}.section-label:after{content:"";background:var(--accent);flex:1;max-width:60px;height:1px}h2{font-family:var(--font-display);margin-bottom:1rem;font-size:clamp(2rem,3vw,3rem);font-weight:700;line-height:1.1}#about .about-grid{grid-template-columns:1.2fr 1fr;align-items:start;gap:6rem;margin-top:3rem;display:grid}#about p{color:var(--muted);margin-bottom:1rem}#about .tools-heading{font-family:var(--font-display);color:var(--text);margin-bottom:1.75rem;font-size:1.4rem}.tool-groups{flex-direction:column;gap:1.5rem;display:flex}#about .tool-group-label{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:.6rem;font-size:11px}.tool-list{flex-wrap:wrap;gap:.5rem;list-style:none;display:flex}.tool-chip{color:var(--text);border:1px solid var(--border);cursor:default;background:#ffffff08;border-radius:6px;align-items:center;gap:.5rem;padding:.45rem .8rem;font-size:12px;transition:border-color .2s,background .2s;display:inline-flex}.tool-chip:hover{background:#c8a96e0f;border-color:#c8a96e80}.tool-icon{width:15px;height:15px;color:var(--muted);flex-shrink:0;transition:color .2s}.tool-chip:hover .tool-icon{color:var(--brand)}@media (hover:none){.tool-icon{color:var(--brand)}}#work .projects-grid{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:2rem;margin-top:3rem;display:grid}.project-card{cursor:pointer;background:linear-gradient(145deg,#232323e6 0%,#0e0e0ef2 100%);border:none;border-radius:12px;padding:2.5rem;transition:box-shadow .3s,background .3s;position:relative;overflow:hidden;box-shadow:0 10px 30px #00000080}.card-glare{pointer-events:none;border-radius:inherit;z-index:2;position:absolute;inset:0}.project-media{aspect-ratio:16/10;border-bottom:1px solid var(--border);background:var(--surface);margin:-2.5rem -2.5rem 1.75rem;overflow:hidden}.project-media img{object-fit:cover;object-position:top;filter:saturate(.85)brightness(.9);width:100%;height:100%;transition:transform .6s cubic-bezier(.22,1,.36,1),filter .4s;display:block}.project-card:hover .project-media img{filter:none;transform:scale(1.04)}.project-card:hover{background:linear-gradient(145deg,#2d2d2de6 0%,#141414f2 100%);box-shadow:0 15px 40px #c8a96e26}.project-num{color:var(--muted);margin-bottom:1.5rem;font-size:11px}.project-title{font-family:var(--font-display);margin-bottom:.75rem;font-size:1.4rem}.project-desc{color:var(--muted);margin-bottom:1.5rem;font-size:13px}.project-tags{flex-wrap:wrap;gap:.5rem;display:flex}.tag{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);background:#c8a96e0d;border:1px solid #c8a96e4d;border-radius:4px;padding:.3rem .7rem;font-size:10px}.project-arrow{float:right;color:var(--accent);margin-top:-.5rem;font-size:1.2rem}.hackathon-grid{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:2rem;margin-top:3rem;display:grid}.hackathon-card{border-top:2px solid var(--accent);background:linear-gradient(145deg,#232323e6 0%,#0e0e0ef2 100%);border-radius:12px;flex-direction:column;padding:2rem;transition:box-shadow .3s;display:flex;position:relative;box-shadow:0 10px 30px #00000080}.hackathon-card:hover{box-shadow:0 15px 40px #c8a96e26}.hackathon-head{margin-bottom:1.25rem}.hackathon-host{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:.5rem;font-size:11px}.hackathon-date{color:var(--muted)}.hackathon-event{font-family:var(--font-display);font-size:1.4rem;line-height:1.2}.hackathon-project{color:var(--text);flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.75rem;font-size:13px;display:flex}.hackathon-text{color:var(--muted);margin-bottom:1.5rem;font-size:13px}.hackathon-links{flex-wrap:wrap;gap:.75rem;margin-top:auto;display:flex}.hackathon-links .btn-ghost{padding:.5rem 1.1rem}.timeline-date{color:var(--muted);padding-top:.2rem;font-size:12px}.timeline-desc{color:var(--muted);font-size:13px}.carousel-wrapper{border-top:1px solid var(--border);justify-content:center;align-items:center;gap:1rem;margin-top:3rem;padding-top:3rem;display:flex}.carousel-viewport{perspective:1200px;touch-action:pan-y;justify-content:center;align-items:center;width:100%;max-width:800px;height:380px;display:flex;position:relative}.carousel-card{border:1px solid var(--border);text-align:left;opacity:0;pointer-events:none;background:linear-gradient(145deg,#1e1e1ee6 0%,#0e0e0ef2 100%);border-radius:12px;flex-direction:column;align-items:flex-start;width:280px;padding:2.5rem 1.5rem;transition:transform .6s cubic-bezier(.25,1,.5,1),opacity .6s,z-index .6s;display:flex;position:absolute;box-shadow:0 10px 30px #00000080}.card-logo{align-items:center;height:40px;margin-bottom:1.5rem;display:flex}.card-logo img,.card-logo svg{filter:drop-shadow(0 2px 4px #00000080);width:auto;max-height:100%}.card-logo-text{color:#ff4d4d;margin:0;font-family:sans-serif}.carousel-card.card-active{opacity:1;z-index:3;pointer-events:auto;border-color:var(--accent);transform:translate(0)translateZ(50px)scale(1);box-shadow:0 10px 40px #c8a96e26}.carousel-card.card-prev{opacity:.5;z-index:2;pointer-events:auto;cursor:pointer;transform:translate(-65%)translateZ(-100px)rotateY(25deg)}.carousel-card.card-next{opacity:.5;z-index:2;pointer-events:auto;cursor:pointer;transform:translate(65%)translateZ(-100px)rotateY(-25deg)}.carousel-card.card-hidden{opacity:0;z-index:1;transform:translate(0)translateZ(-300px)scale(.5)}.carousel-card h3{font-family:var(--font-display);margin-bottom:.25rem;font-size:1.3rem;line-height:1.2}.cert-issuer{color:var(--muted);margin-bottom:2rem;font-size:12px}.cert-btn{text-align:center;width:100%;margin-top:auto;padding:.5rem 1.5rem}.carousel-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;z-index:5;background:0 0;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;transition:all .3s;display:flex}.carousel-btn:hover{border-color:var(--accent);color:var(--accent);background:#c8a96e0d;transform:scale(1.05)}@media (width<=768px){.carousel-viewport{height:320px}.carousel-card{width:240px;padding:1.5rem}.carousel-btn{display:none}.carousel-card.card-prev{transform:translate(-40%)translateZ(-100px)rotateY(35deg)}.carousel-card.card-next{transform:translate(40%)translateZ(-100px)rotateY(-35deg)}}#contact{text-align:center}#contact h2{margin-bottom:1rem}#contact p{color:var(--muted);margin-bottom:2.5rem}.contact-email{font-family:var(--font-display);color:var(--text);border-bottom:1px solid var(--accent);overflow-wrap:anywhere;padding-bottom:.25rem;font-size:clamp(1.5rem,3vw,2.5rem);font-style:italic;text-decoration:none;transition:color .2s;display:inline-block}.contact-email:hover{color:var(--accent)}.social-row{justify-content:center;gap:2rem;margin-top:3rem;display:flex}.social-row a{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:11px;text-decoration:none;transition:color .2s}.social-row a:hover{color:var(--text)}footer{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;padding:2rem 3rem;font-size:11px;display:flex}.mag-inner{pointer-events:none;display:inline-block}@media (width<=1024px){#about .about-grid{gap:3rem}}@media (width<=768px){#hero{grid-template-columns:1fr;align-content:center;gap:2.5rem;padding:6.5rem 1.5rem 3rem}.hero-visual{order:-1;justify-content:flex-start;padding-left:0}.avatar-frame{width:min(200px,55vw);margin:0}.avatar-frame,.profile-img{border-radius:18px}.deco-line{display:none}.hero-desc{min-height:3.6em;margin-bottom:2rem;font-size:16px}section{padding:4rem 1.5rem}#about .about-grid{grid-template-columns:1fr;gap:3rem;margin-top:0}.project-card{padding:2rem 1.5rem}.project-media{margin:-2rem -1.5rem 1.5rem}.hero-currently{margin-top:2rem}.connected-timeline{padding-left:1.5rem}.timeline-dot{left:-1.5rem}.connected-timeline-content{padding-left:.75rem}.timeline-logo{width:42px;height:42px;padding:6px}.modal-content{max-height:85svh;padding:2.5rem 1.5rem 2rem}.modal-content h2{padding-right:2rem}.gallery-thumbs .gallery-thumb{width:64px}.modal-close{top:1rem;right:1rem}.modal-buttons{flex-wrap:wrap}.social-row{gap:1.5rem}footer{text-align:center;flex-direction:column;gap:.75rem;padding:2rem 1.5rem}footer img{max-width:100%;height:auto}}.footer-badges{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;display:flex}.footer-badges a{display:flex}.visit-counter{cursor:default;border-radius:999px;align-items:center;gap:.7rem;height:55px;padding:0 1.25rem 0 1.1rem;display:inline-flex;position:relative;overflow:hidden}.visit-counter:hover{box-shadow:inset 0 1px #ffffff38,0 10px 34px #00000061,0 0 24px #c8a96e2e}.odometer{font-family:var(--font-mono);color:var(--accent);text-shadow:0 0 14px #c8a96e59;font-variant-numeric:tabular-nums;font-size:1.5rem;line-height:1;display:inline-flex}.odometer-digit{height:1em;display:inline-block;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 22% 78%,#0000);mask-image:linear-gradient(#0000,#000 22% 78%,#0000)}.odometer-digit.dim{color:#c8a96e47;text-shadow:none}.odometer-strip{flex-direction:column;display:flex}.odometer-strip span{text-align:center;height:1em;display:block}.visit-counter-label{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-size:10px}.visit-counter-shine{pointer-events:none;background:linear-gradient(105deg,#0000 30%,#ffffff29 45%,#fff0d247 50%,#ffffff29 55%,#0000 70%);animation:1.1s cubic-bezier(.22,1,.36,1) forwards counter-shine;position:absolute;inset:0;transform:translate(-100%)}@keyframes counter-shine{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.visit-counter-shine{display:none}}.typed-cursor{color:var(--accent)}#typed-text{color:var(--text)}.connected-timeline{margin-top:3rem;padding-left:2rem;position:relative}.connected-timeline:before{content:"";background:var(--border);width:1px;position:absolute;top:10px;bottom:0;left:6px}.connected-timeline-item{padding-bottom:3.5rem;position:relative}.connected-timeline-item:last-child{padding-bottom:0}.timeline-dot{background:var(--bg);border:2px solid var(--accent);z-index:2;border-radius:50%;width:13px;height:13px;transition:all .3s;position:absolute;top:.35rem;left:-2rem}.connected-timeline-item:hover .timeline-dot{background:var(--accent);transform:scale(1.2);box-shadow:0 0 10px #c8a96e66}.connected-timeline-content{padding-left:1.5rem}.timeline-header{align-items:flex-start;gap:1.2rem;margin-bottom:1rem;display:flex}.timeline-logo{object-fit:contain;border:1px solid var(--border);background:#ffffff0d;border-radius:8px;flex-shrink:0;width:50px;height:50px;padding:8px}.hl{color:var(--accent);font-weight:500}.timeline-logo-text{font-family:var(--font-display);color:var(--accent);justify-content:center;align-items:center;font-size:1rem;font-style:italic;display:flex}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;background:#000000b3;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.modal-content{background:var(--bg);border:1px solid var(--border);border-radius:16px;width:90%;max-width:760px;max-height:90svh;padding:3rem;position:relative;overflow-y:auto;box-shadow:0 20px 50px #00000080}.modal-close{color:var(--text);cursor:pointer;background:0 0;border:none;font-size:2rem;line-height:1;transition:color .2s;position:absolute;top:1.5rem;right:1.5rem}.modal-close:hover{color:var(--accent)}.modal-content>p{color:var(--muted);line-height:1.8}.gallery{margin:1.5rem 0 2rem}.gallery-stage{aspect-ratio:16/10;border:1px solid var(--border);background:#000;border-radius:10px;overflow:hidden}.gallery-stage figure{width:100%;height:100%}.gallery-stage img,.gallery-stage video{object-fit:contain;width:100%;height:100%;display:block}.gallery-caption{color:var(--muted);letter-spacing:.05em;margin-top:.6rem;font-size:11px}.gallery-thumbs{gap:.5rem;margin-top:.9rem;padding-bottom:2px;display:flex;overflow-x:auto}.gallery-thumb{aspect-ratio:16/10;border:1px solid var(--border);cursor:pointer;opacity:.55;background:#000;border-radius:6px;flex:none;width:84px;padding:0;transition:opacity .2s,border-color .2s;position:relative;overflow:hidden}.gallery-thumb:hover{opacity:.85}.gallery-thumb.active{opacity:1;border-color:var(--accent)}.gallery-thumb img{object-fit:cover;width:100%;height:100%;display:block}.gallery-play{color:#fff;text-shadow:0 1px 4px #000c;justify-content:center;align-items:center;font-size:14px;display:flex;position:absolute;inset:0}.modal-buttons{gap:1rem;margin-top:2.5rem;display:flex}.timeline-meta .timeline-date{color:var(--muted);font-size:12px;font-family:var(--font-mono);margin-bottom:.25rem}.timeline-meta .timeline-title{font-family:var(--font-display);color:var(--text);margin-bottom:.25rem;font-size:1.3rem}.timeline-meta .timeline-issuer{color:var(--accent);margin:0;font-size:13px}.connected-timeline-content .timeline-desc{color:var(--muted);max-width:600px;font-size:13px;line-height:1.6}
