.social-links{display:flex;align-items:center}.social-links__link{color:var(--text-secondary);transition:color var(--transition-fast),transform var(--transition-fast)}.social-links__link:hover{color:var(--accent)}.social-links--footer{gap:28px}.social-links--footer .social-links__link{display:flex;align-items:center;justify-content:center;width:44px;height:44px}.social-links--footer .social-links__link:hover{transform:scale(1.15)}.social-links--drawer{gap:15px}@media(max-width:800px){.social-links--footer{gap:20px}}.app-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:var(--radius-md);font-family:inherit;font-weight:600;line-height:1;transition:opacity var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.app-button:hover:not(:disabled){opacity:.92}.app-button:disabled{opacity:.7;cursor:not-allowed}.app-button--primary{background:var(--accent);color:var(--bg)}.app-button--secondary{background:var(--panel-bg);border-color:var(--border-medium);color:var(--text-primary)}.app-button--secondary:hover:not(:disabled){background:var(--panel-hover);border-color:var(--border-strong)}.app-button--link{padding:0;border-radius:0;background:transparent;color:var(--accent)}.app-button--link:hover:not(:disabled){opacity:1;color:var(--text-primary)}.app-button--sm{padding:10px 16px;font-size:14px}.app-button--md{padding:14px 24px;font-size:16px}.app-button--full-width{width:100%}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-scrim);z-index:1100;opacity:0;pointer-events:none;transition:opacity .3s ease}.drawer-overlay--open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;width:min(300px,80vw);height:100vh;background:var(--bg);z-index:1200;padding:16px;display:flex;flex-direction:column;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}.drawer--open{transform:translate(0)}.drawer__header{text-align:center;margin-bottom:16px}.drawer__title{color:var(--text-primary);font-size:25px}.drawer__item{display:flex;align-items:center;gap:12px;padding:12px 8px;color:var(--text-primary);font-size:16px;font-weight:500;border-radius:var(--radius-sm);transition:background .2s}.drawer__item:hover{background:var(--panel-bg)}.drawer__cv-btn{margin-top:16px;justify-content:flex-start;border-radius:var(--radius-sm)}.drawer__bottom{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:10px}.drawer__divider{width:100%;height:1px;background:color-mix(in srgb,var(--text-primary) 12%,transparent)}.drawer__footer{color:var(--accent);font-size:14px}.navbar{position:fixed;top:0;left:0;width:100%;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:12px;background:var(--bg)}.navbar__left{display:flex;align-items:center;gap:8px}.navbar__logo-btn{display:flex;align-items:center}.navbar__logo{width:32px;height:32px;object-fit:contain}.navbar__name{font-size:20px;font-weight:600;color:var(--text-primary);transition:all .3s ease}.navbar__name-text{display:inline-block;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.navbar__name-text--full{color:var(--text-primary);font-weight:700;font-size:18px;letter-spacing:.5px}.navbar__right{display:flex;align-items:center;gap:clamp(16px,3vw,40px)}.navbar__item{display:flex;flex-direction:column;align-items:center;gap:5px}.navbar__item-label{font-weight:600;font-size:20px;color:var(--text-primary)}.navbar__item-underline{display:block;height:2px;width:0;background:var(--accent);transition:width .15s ease}.navbar__item-underline--active{width:20px}.navbar__cv-btn{border-radius:var(--radius-sm)}.navbar__hamburger{display:none;align-items:center;justify-content:center;width:44px;height:44px;color:var(--text-primary)}@media(max-width:1180px){.navbar__cv-icon{display:none}}@media(max-width:800px){.navbar__right{display:none}.navbar__hamburger{display:flex}.navbar{justify-content:center;position:relative}.navbar__name{display:none}.navbar__logo{width:30px;height:30px}.navbar__hamburger{position:absolute;right:12px}}.app-tech-badge{--app-tech-badge-size: 44px;position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--app-tech-badge-size);min-width:var(--app-tech-badge-size);height:var(--app-tech-badge-size);padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;color:inherit;border-radius:10px;background:#28282866;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 4px 16px #0003;cursor:inherit;transition:transform .3s ease,background-color .3s ease,border-color .3s ease,box-shadow .3s ease}.app-tech-badge--animated:hover{transform:translateY(-4px);background:#32323299;box-shadow:0 8px 24px #0000004d,inset 0 0 15px color-mix(in srgb,var(--tech-glow, var(--accent)) 18%,transparent);border-color:#fff3}.app-tech-badge__icon{flex-shrink:0}.app-tech-badge__tooltip{position:absolute;left:50%;bottom:calc(100% + 12px);display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--tech-glow, var(--accent)) 24%,rgba(255,255,255,.1));background:linear-gradient(135deg,#ffe04014,#101010f5),#101010f5;box-shadow:0 12px 28px #00000052;color:#fff;font-size:11px;font-weight:700;line-height:1;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transform:translate(-50%,8px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease;z-index:20}.app-tech-badge__tooltip:after{content:"";position:absolute;top:100%;left:50%;width:8px;height:8px;background:#101010;border-right:1px solid color-mix(in srgb,var(--tech-glow, var(--accent)) 24%,rgba(255,255,255,.1));border-bottom:1px solid color-mix(in srgb,var(--tech-glow, var(--accent)) 24%,rgba(255,255,255,.1));transform:translate(-50%,-50%) rotate(45deg)}.app-tech-badge:hover .app-tech-badge__tooltip,.app-tech-badge:focus-visible .app-tech-badge__tooltip{opacity:1;visibility:visible;transform:translate(-50%)}.app-tech-badge__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero{position:relative;width:100%;height:100vh;min-height:600px;display:flex;align-items:center;justify-content:center;overflow:hidden;background-color:#050505}.hero__glow{position:absolute;width:60vw;height:60vw;background:radial-gradient(circle,rgba(245,197,24,.08) 0%,transparent 60%);top:50%;left:50%;transform:translate(-50%,-50%);animation:slowPulse 12s ease-in-out infinite alternate;pointer-events:none;z-index:0}@keyframes slowPulse{0%{transform:translate(-50%,-50%) scale(1);opacity:.7}to{transform:translate(-50%,-50%) scale(1.3);opacity:1}}.hero__grid-wrapper{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:grid;grid-template-columns:repeat(var(--hero-grid-cols, 1),minmax(0,1fr));grid-template-rows:repeat(var(--hero-grid-rows, 1),minmax(0,1fr));overflow:hidden;opacity:.5;pointer-events:none}.hero__grid-square{width:100%;height:100%;border:.5px solid rgba(255,255,255,.04);background-color:transparent;box-sizing:border-box;transition:background-color .6s ease,border-color .6s ease;pointer-events:all}.hero__grid-square:hover{background-color:#f5c5180f;border-color:#f5c51859;outline:1px solid rgba(245,197,24,.2);outline-offset:-2px;transition:background-color .08s ease,border-color .08s ease,outline .08s ease}.hero__grid-square.is-lit{background-color:#f5c5180d;border-color:#f5c5182e}.hero__grid-square.is-wave-color{background-color:var(--wave-bg);border-color:var(--wave-border);animation:waveShimmer 3s ease-in-out infinite alternate;animation-delay:calc(var(--wave-ratio, 0) * -3s);transition:background-color .4s ease,border-color .4s ease}@keyframes waveShimmer{0%{filter:brightness(.6) saturate(.7)}to{filter:brightness(1.1) saturate(1)}}.hero__logo-wrapper{position:relative;width:45vmin;height:45vmin;min-width:250px;min-height:250px;max-width:440px;max-height:440px;border-radius:50%;box-shadow:0 0 60px #f5c51833,inset 0 0 30px #f5c51826;background:radial-gradient(circle,rgba(245,197,24,.1) 0%,transparent 70%);-webkit-user-select:none;user-select:none;pointer-events:none}.hero__logo-wrapper:before,.hero__logo-wrapper:after{content:"";position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;border-radius:50%;border:2px solid rgba(245,197,24,.4);box-shadow:0 0 20px #f5c51833,inset 0 0 20px #f5c5181a;animation:pulseRing 6s cubic-bezier(.21,.53,.56,.8) infinite;z-index:-1;pointer-events:none}.hero__logo-wrapper:after{animation-delay:3s}@keyframes pulseRing{0%{transform:scale(.6);opacity:0;border-width:4px}5%{opacity:.6}to{transform:scale(2.2);opacity:0;border-width:1px}}.hero__logo-image{width:100%;height:100%;object-fit:contain;animation:spinLogo 20s linear infinite;filter:drop-shadow(0 0 30px rgba(0,0,0,.8));position:relative;z-index:2;pointer-events:none}@keyframes spinLogo{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hero__tech-stack{display:flex;gap:12px;margin-top:24px;opacity:.85}.hero__tech-item{--app-tech-badge-size: 44px}.hero__noise{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");mix-blend-mode:overlay}.hero__content{position:relative;z-index:4;display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:100%;max-width:1250px;padding:0 64px;gap:40px;pointer-events:none}.hero__text-column{flex:1;display:flex;flex-direction:column;align-items:flex-start;text-align:left;pointer-events:auto}.hero__visual-column{flex:1;display:flex;justify-content:flex-end;align-items:center;pointer-events:none}.hero__title-row{display:flex;align-items:baseline;flex-wrap:nowrap;white-space:nowrap;justify-content:flex-start;gap:8px}.hero__greeting{font-family:var(--font-mono);font-weight:800;color:#fff;font-size:clamp(24px,4vw,50px);line-height:1.2}.hero__alias-box{width:max-content;display:inline-flex;align-items:center;padding:0 8px;margin-left:8px;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;font-family:var(--font-mono);font-size:clamp(28px,5vw,64px);justify-content:flex-start;overflow:hidden}.hero__alias-box:before{content:"​";display:inline-block}.hero__alias-box:hover{background:#f5c5181a;transform:translateY(-2px)}.hero__alias{font-family:inherit;font-weight:800;color:var(--accent);font-size:inherit;line-height:1.2;text-shadow:0 0 20px rgba(245,197,24,.6),0 0 40px rgba(245,197,24,.3)}.hero__sub{width:max-content;margin-top:20px;font-family:var(--font-mono);font-weight:500;color:#ffffffb3;font-size:clamp(15px,2vw,20px);letter-spacing:.5px}.hero__arrow{margin-top:40px;opacity:.5;display:inline-flex;align-items:center;justify-content:center;width:fit-content;transition:opacity var(--transition-fast),transform var(--transition-fast)}.hero__arrow:hover{opacity:.9;transform:translateY(2px)}@media(max-width:900px){.hero__content{padding:0 24px;flex-direction:column;justify-content:center;text-align:center;gap:60px}.hero__text-column{align-items:center;text-align:center}.hero__visual-column{justify-content:center;width:100%;margin-bottom:24px}.hero__title-row{justify-content:center}.hero__alias-box{margin-left:0;margin-top:8px}}.section-shell{width:100%;padding:var(--section-v-lg) var(--pad-lg)}.section-shell--bg{background:var(--bg)}.section-shell--surface{background:var(--surface)}.section-shell__inner{width:100%;max-width:var(--content-max);margin:0 auto}.section-shell__header{margin-bottom:32px}.section-shell__title{font-size:var(--section-title-size);font-weight:800;color:var(--text-primary);letter-spacing:-.5px}.section-shell__accent{width:80px;height:4px;margin:8px 0 16px;background:var(--accent)}.section-shell__subtitle{max-width:720px;font-size:16px;color:var(--text-secondary)}@media(max-width:800px){.section-shell{padding:var(--section-v-sm) var(--pad-sm)}.section-shell__title{font-size:var(--section-title-mobile)}.section-shell__subtitle{font-size:14px}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg: #111111;--surface: #1a1a1a;--accent: #f5c518;--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .7);--text-tertiary: rgba(255, 255, 255, .62);--text-muted: rgba(255, 255, 255, .54);--text-subtle: rgba(255, 255, 255, .38);--text-placeholder: rgba(255, 255, 255, .4);--accent-dim: rgba(245, 197, 24, .12);--accent-border: rgba(245, 197, 24, .35);--panel-bg: rgba(255, 255, 255, .06);--panel-hover: rgba(255, 255, 255, .1);--card-bg: rgba(15, 15, 15, .4);--card-hover-bg: rgba(20, 20, 20, .8);--overlay-scrim: rgba(0, 0, 0, .5);--border-subtle: rgba(255, 255, 255, .05);--border-soft: rgba(255, 255, 255, .1);--border-medium: rgba(255, 255, 255, .15);--border-strong: rgba(255, 255, 255, .2);--tile-dark: #161616;--tile-hover: #282828;--success: #4ade80;--danger: #f87171;--font-mono: "GeistMono", "Source Code Pro", monospace;--font-body: "Source Code Pro", monospace;--section-title-size: 36px;--section-title-mobile: 28px;--pad-sm: 24px;--pad-lg: 48px;--section-v-sm: 48px;--section-v-lg: 80px;--content-max: 1200px;--content-max-narrow: 1100px;--radius-sm: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 20px;--radius-pill: 999px;--transition-fast: .2s ease;--transition-base: .3s ease;--shadow-card: 0 8px 32px rgba(0, 0, 0, .2);--shadow-card-hover: 0 16px 40px rgba(0, 0, 0, .4), 0 0 30px rgba(245, 197, 24, .1);--bp-mobile: 800px;--bp-desktop: 1200px}@font-face{font-family:GeistMono;src:url(/fonts/GeistMono-Black.otf) format("opentype");font-weight:900;font-display:swap}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none;font-family:inherit;color:inherit}input,textarea{font-family:inherit}::selection{background:var(--accent);color:var(--bg)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:4px}.app__empty-shell{min-height:clamp(132px,18vw,188px);border-radius:var(--radius-xl);border:1px dashed rgba(255,224,64,.18);background:linear-gradient(135deg,rgba(255,192,64,.08),transparent 52%),linear-gradient(180deg,#ffffff05,#ffffff03),#ffffff05;box-shadow:inset 0 1px #ffffff0a}
