@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #030008;--bg-secondary: #0a0018;--purple-primary: #8400ff;--purple-glow: rgba(132, 0, 255, .2);--purple-soft: rgba(132, 0, 255, .08);--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .65);--text-muted: rgba(255, 255, 255, .4);--border-color: rgba(132, 0, 255, .15);--glass-bg: rgba(10, 0, 30, .6);--glass-border: rgba(132, 0, 255, .12)}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);overflow-x:hidden;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}.glass-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:20px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:all .4s cubic-bezier(.4,0,.2,1)}.glass-card:hover{border-color:#8400ff59;transform:translateY(-4px);box-shadow:0 20px 60px #8400ff1f}.aurora-container{width:100%;height:100%}.cursor-glow-main{position:fixed;width:var(--glow-size, 400px);height:var(--glow-size, 400px);border-radius:50%;pointer-events:none;z-index:9999;background:radial-gradient(circle,rgba(var(--glow-color, 132, 0, 255),.18) 0%,rgba(var(--glow-color, 132, 0, 255),.08) 25%,rgba(var(--glow-color, 132, 0, 255),.03) 45%,transparent 70%);transform:translate(-50%,-50%);transition:left .08s ease-out,top .08s ease-out;will-change:transform;mix-blend-mode:screen}@media(max-width:768px){.cursor-glow-main,.cursor-glow-trail{display:none!important}}:root{--purple-primary: rgba(132, 0, 255, 1);--purple-glow: rgba(132, 0, 255, .2);--purple-border: rgba(132, 0, 255, .8);--border-color: #392e4e;--background-dark: #060010;--white: #fff}.card-grid{display:grid;gap:1.2em;padding:.75em;max-width:900px;width:100%;margin:0 auto;font-size:clamp(1rem,.9rem + .5vw,1.5rem)}.magic-bento-card{display:flex;flex-direction:column;justify-content:space-between;position:relative;min-height:280px;width:100%;padding:1.25em;border-radius:20px;border:1px solid var(--border-color);background:var(--background-dark);font-weight:300;overflow:hidden;transition:all .3s ease;--glow-x: 50%;--glow-y: 50%;--glow-intensity: 0;--glow-radius: 200px}.magic-bento-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000004d}.magic-bento-card__link{display:flex;flex-direction:column;height:100%;text-decoration:none;color:var(--white);gap:.75em}.magic-bento-card__header{display:flex;gap:.75em;justify-content:space-between}.magic-bento-card__label{font-size:11px;text-transform:uppercase;letter-spacing:2px;opacity:.6;color:var(--white)}.magic-bento-card__image-wrapper{display:flex;align-items:center;justify-content:center;flex:1;padding:1em 0}.magic-bento-card__image{max-width:100%;max-height:90px;width:auto;height:auto;border-radius:12px;object-fit:contain;border:2px solid rgba(132,0,255,.3);transition:transform .3s ease,box-shadow .3s ease}.magic-bento-card:hover .magic-bento-card__image{transform:scale(1.08);box-shadow:0 0 20px #8400ff66}.magic-bento-card__content{display:flex;flex-direction:column;color:var(--white)}.magic-bento-card__title{font-weight:600;font-size:18px;margin:0 0 .25em}.magic-bento-card__description{font-size:13px;line-height:1.4;opacity:.7}.magic-bento-card--text-autohide .magic-bento-card__title{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:1;line-clamp:1}.magic-bento-card--text-autohide .magic-bento-card__description{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:2;line-clamp:2}@media(max-width:599px){.card-grid{grid-template-columns:1fr;padding:.5em}.magic-bento-card{min-height:220px}}@media(min-width:600px){.card-grid{grid-template-columns:repeat(3,1fr)}}.magic-bento-card--border-glow:after{content:"";position:absolute;inset:0;padding:6px;background:radial-gradient(var(--glow-radius) circle at var(--glow-x) var(--glow-y),rgba(132,0,255,calc(var(--glow-intensity) * .8)) 0%,rgba(132,0,255,calc(var(--glow-intensity) * .4)) 30%,transparent 60%);border-radius:inherit;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none;opacity:1;transition:opacity .3s ease;z-index:1}.magic-bento-card--border-glow:hover{box-shadow:0 4px 20px #2e184e66,0 0 30px var(--purple-glow)}.particle-container{position:relative;overflow:hidden}.particle:before{content:"";position:absolute;inset:-2px;background:#8400ff33;border-radius:50%;z-index:-1}.particle-container:hover{box-shadow:0 4px 20px #2e184e33,0 0 30px var(--purple-glow)}.global-spotlight{mix-blend-mode:screen;will-change:transform,opacity;z-index:200!important;pointer-events:none}.bento-section{position:relative;-webkit-user-select:none;user-select:none}.hero-section{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.hero-aurora{position:absolute;inset:0;z-index:0;opacity:.6}.hero-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem;text-align:center}.hero-avatar-wrapper{position:relative;width:150px;height:150px}.hero-avatar{width:150px;height:150px;border-radius:50%;object-fit:cover;border:3px solid rgba(132,0,255,.5);box-shadow:0 0 40px #8400ff4d,0 0 80px #8400ff1a;position:relative;z-index:2;animation:avatarFloat 4s ease-in-out infinite}.hero-avatar-ring{position:absolute;inset:-8px;border-radius:50%;border:2px solid rgba(132,0,255,.25);z-index:1;animation:ringPulse 3s ease-in-out infinite}@keyframes avatarFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes ringPulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.08);opacity:1}}.hero-title{font-size:clamp(2rem,5vw,3.5rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;display:flex;flex-wrap:wrap;justify-content:center}.hero-subtitle{font-size:clamp(1rem,2vw,1.3rem);color:var(--text-secondary);font-weight:300;display:flex;flex-wrap:wrap;justify-content:center}.hero-socials{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-top:.5rem}.social-link{display:flex;align-items:center;gap:.5em;padding:.6em 1.4em;border-radius:100px;font-size:.85rem;font-weight:500;background:#8400ff1a;border:1px solid rgba(132,0,255,.25);color:#ffffffe6;text-decoration:none;transition:all .3s ease;cursor:pointer}.social-link svg{flex-shrink:0}.social-link:hover{background:#8400ff40;border-color:#8400ff99;transform:translateY(-3px);box-shadow:0 6px 20px #8400ff4d;color:#fff}.hero-scroll-indicator{position:absolute;bottom:2rem;z-index:1;display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--text-muted);font-size:.75rem;letter-spacing:2px;text-transform:uppercase;animation:fadeInUp 1.5s ease 2s both}.scroll-arrow{font-size:1.2rem;animation:bounceDown 2s ease-in-out infinite}@keyframes bounceDown{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.section-container{max-width:1100px;margin:0 auto;padding:0 2rem}.section-title{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;text-align:center;margin-bottom:.5rem;letter-spacing:-.02em}.section-title-accent{background:linear-gradient(135deg,#8400ff,#c850ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section-subtitle{text-align:center;color:var(--text-secondary);font-size:1rem;margin-bottom:3rem;font-weight:300}.projects-section{padding:6rem 0 8rem;position:relative}.site-footer{border-top:1px solid var(--border-color);padding:2rem}.footer-content{max-width:1100px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.footer-brand{font-weight:700;font-size:1.1rem;background:linear-gradient(135deg,#8400ff,#c850ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.footer-year{color:var(--text-muted);font-size:.85rem}@media(max-width:768px){.hero-avatar-wrapper,.hero-avatar{width:120px;height:120px}.section-container{padding:0 1rem}}
