@import url(https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=DM+Mono:wght@300;400;500&family=Syne:wght@400;500;600;700;800&display=swap);@import url(https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Inter:wght@300;400;500;600;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.e-nav{background:#0000;border-bottom:1px solid #0000;height:60px;left:0;position:fixed;top:0;transition:background .5s cubic-bezier(.22,1,.36,1),border-color .5s cubic-bezier(.22,1,.36,1),-webkit-backdrop-filter .5s;transition:background .5s cubic-bezier(.22,1,.36,1),border-color .5s cubic-bezier(.22,1,.36,1),backdrop-filter .5s;transition:background .5s cubic-bezier(.22,1,.36,1),border-color .5s cubic-bezier(.22,1,.36,1),backdrop-filter .5s,-webkit-backdrop-filter .5s;width:100%;z-index:1000}.e-nav--solid{backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);background:#060606cc;border-bottom-color:#ffffff0a}.e-nav__inner{align-items:center;display:flex;height:100%;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 2.5rem}.e-brand{color:#f0f0f0;flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:1rem;font-weight:500;letter-spacing:-1px;text-decoration:none;transition:opacity .3s;z-index:1001}.e-brand:hover{opacity:.6}.e-links{align-items:center;display:flex;gap:.35rem;position:relative}.e-dot{background:#f0f0f0;border-radius:50%;bottom:-8px;height:3px;pointer-events:none;position:absolute;transform:translateX(-50%);transition:left .45s cubic-bezier(.22,1,.36,1);width:3px}.e-sep{color:#ffffff1a;font-family:JetBrains Mono,monospace;font-size:.7rem;margin:0 .15rem;-webkit-user-select:none;user-select:none}.e-link{color:#555;font-family:Inter,system-ui,sans-serif;font-size:.8rem;font-weight:400;letter-spacing:-.2px;padding:.3rem .45rem;position:relative;text-decoration:none;transition:color .25s ease}.e-link:hover{color:#ccc}.e-link--active{color:#f0f0f0}.e-link:after{background:#f0f0f0;bottom:2px;content:"";height:1px;left:.45rem;position:absolute;right:.45rem;transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.22,1,.36,1)}.e-link:hover:after{transform:scaleX(1)}.e-link--active:after{transform:scaleX(0)}.e-actions{align-items:center;display:flex;flex-shrink:0;gap:1.2rem;z-index:1001}.e-resume{color:#555;font-family:Inter,system-ui,sans-serif;font-size:.75rem;font-weight:400;letter-spacing:.5px;text-decoration:none;transition:color .3s}.e-resume:hover{color:#ccc}.e-toggle{align-items:center;background:none;border:none;cursor:pointer;display:none;height:36px;justify-content:center;padding:0;position:relative;width:36px}.e-toggle__dot{background:#f0f0f0;border-radius:50%;display:block;height:8px;transition:width .35s cubic-bezier(.22,1,.36,1),height .35s cubic-bezier(.22,1,.36,1),background .35s,box-shadow .35s;width:8px}.e-toggle--open .e-toggle__dot{background:#0000;box-shadow:inset 0 0 0 1.5px #f0f0f0;height:20px;width:20px}.e-sheet{inset:0;pointer-events:none;position:fixed;z-index:998}.e-sheet--open{pointer-events:auto}.e-sheet__backdrop{background:#0009;inset:0;opacity:0;position:absolute;transition:opacity .35s cubic-bezier(.22,1,.36,1)}.e-sheet--open .e-sheet__backdrop{opacity:1}.e-sheet__panel{background:#0a0a0a;border-radius:20px 20px 0 0;border-top:1px solid #ffffff0f;bottom:0;left:0;max-height:85vh;overflow-y:auto;padding:1rem 2rem 2.5rem;position:absolute;right:0;transform:translateY(100%);transition:transform .45s cubic-bezier(.22,1,.36,1)}.e-sheet--open .e-sheet__panel{transform:translateY(0)}.e-sheet__handle{background:#ffffff1f;border-radius:2px;height:4px;margin:0 auto 1.5rem;width:36px}.e-sheet__links{display:flex;flex-direction:column}.e-sheet__link{align-items:center;border-bottom:1px solid #ffffff0a;display:flex;justify-content:space-between;opacity:0;padding:1.1rem 0;text-decoration:none;transform:translateY(12px);transition:opacity .4s cubic-bezier(.22,1,.36,1),transform .4s cubic-bezier(.22,1,.36,1)}.e-sheet--open .e-sheet__link{opacity:1;transform:translateY(0)}.e-sheet__link:first-child{border-top:1px solid #ffffff0a}.e-sheet__link-text{color:#666;font-family:Inter,system-ui,sans-serif;font-size:1.35rem;font-weight:500;letter-spacing:-.3px;transition:color .25s}.e-sheet__link--active .e-sheet__link-text,.e-sheet__link:hover .e-sheet__link-text{color:#f0f0f0}.e-sheet__link-dot{background:#f0f0f0;border-radius:50%;flex-shrink:0;height:5px;width:5px}.e-sheet__link-arrow{color:#555;font-size:.9rem}.e-sheet__footer{color:#ffffff1a;font-family:JetBrains Mono,monospace;font-size:.6rem;letter-spacing:1px;margin-top:1.5rem;opacity:0;text-align:center;transition:opacity .4s cubic-bezier(.22,1,.36,1)}.e-sheet--open .e-sheet__footer{opacity:1}@media (max-width:768px){.e-links,.e-resume{display:none}.e-toggle{display:flex}.e-nav__inner{padding:0 1.5rem}}@media (max-width:480px){.e-nav__inner{padding:0 1rem}.e-sheet__panel{border-radius:16px 16px 0 0;padding:1rem 1.5rem 2rem}.e-sheet__link-text{font-size:1.15rem}.e-sheet__link{padding:.9rem 0}}.hm{--red:#c03030;--heading:#f0f0f0;--text:#888;--muted:#555;--wire:#ffffff12;--mono:"DM Mono",monospace;--serif:"Instrument Serif",Georgia,serif;--sans:"Syne",system-ui,sans-serif;background-color:#060606;color:#888;font-family:Syne,system-ui,sans-serif;margin:-80px calc(-50vw + 50%) -20px;width:100vw}.hm__progress{background:linear-gradient(90deg,var(--red),#c030304d);height:1px;left:0;position:fixed;right:0;top:0;transform-origin:left;z-index:9000}.hm__spacer{height:300vh;position:relative}.hm__cinematic{background:#060606;height:100vh;left:0;overflow:hidden;position:fixed;right:0;top:0;will-change:opacity;z-index:5}.hm__cinematic,.hm__cinematic-inner{align-items:center;display:flex;justify-content:center}.hm__cinematic-inner{inset:0;left:50%;margin:0 auto;max-width:1400px;padding:0 2.5rem;position:absolute;transform:translateX(-50%);width:100%}.hm__side{display:flex;flex:1 1;flex-direction:column;min-width:0;z-index:2}.hm__side--left{align-items:flex-end;padding-right:3.5rem;text-align:right}.hm__side--right{align-items:flex-start;padding-left:3.5rem;text-align:left}.hm__name{display:flex;flex-direction:column;font-size:clamp(2.6rem,5vw,4rem);font-weight:700;letter-spacing:-2px;line-height:.95;margin-bottom:1.2rem}.hm__name,.hm__name-first{color:#fff}.hm__shimmer{color:#fff;display:inline-block;position:relative}.hm__shimmer:after{animation:hm-shimmer 4s ease-in-out 1.5s infinite;background:linear-gradient(120deg,#0000,#0000 30%,#ffffff40 42%,#ffffff73 50%,#ffffff40 58%,#0000 70%,#0000);-webkit-background-clip:text;background-clip:text;background-position:200%;background-size:250% 100%;content:"";inset:0;pointer-events:none;position:absolute}@keyframes hm-shimmer{0%{background-position:200%}40%{background-position:-50%}to{background-position:-50%}}.hm__name-last{-webkit-text-stroke:1.5px #fff3;color:#0000}.hm__role{color:var(--heading);font-family:var(--serif);font-size:clamp(1.5rem,3vw,2.2rem);font-style:italic;letter-spacing:-.3px;line-height:1.15;margin-bottom:1.4rem}.hm__cursor{animation:hm-blink 1s step-end infinite;color:#fff6;display:inline-block;font-weight:300;margin-left:2px}@keyframes hm-blink{0%,to{opacity:1}50%{opacity:0}}.hm__tags{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-end}.hm__tag{align-items:center;color:var(--muted);display:inline-flex;font-family:var(--mono);font-size:.68rem;gap:.35rem;letter-spacing:.5px;text-transform:uppercase}.hm__tag--pulse{color:#c03030}.hm__tag-dot{animation:hm-pulse 2s ease-in-out infinite;background:#c03030;border-radius:50%;height:6px;width:6px}@keyframes hm-pulse{0%,to{box-shadow:0 0 0 0 #c030304d;opacity:1}50%{box-shadow:0 0 8px 3px #c0303026;opacity:.6}}.hm__bio{color:var(--muted);font-size:1rem;line-height:1.7;margin-bottom:1.8rem;max-width:400px}.hm__ctas{display:flex;flex-wrap:wrap;gap:.7rem}.hm__btn{align-items:center;border:1px solid #0000;border-radius:6px;cursor:pointer;display:inline-flex;font-family:var(--sans);font-size:.85rem;font-weight:600;gap:.4rem;padding:.65rem 1.4rem;text-decoration:none;transition:all .25s ease}.hm__btn--primary{background:#fff;border-color:#fff;color:#060606}.hm__btn--primary:hover{background:#e0e0e0;border-color:#e0e0e0;transform:translateY(-2px)}.hm__btn--ghost{background:#0000;border-color:var(--wire);color:var(--text)}.hm__btn--ghost:hover{border-color:#ffffff40;color:#fff;transform:translateY(-2px)}.hm__center{flex-shrink:0;transform-origin:center 38%;width:460px;will-change:transform;z-index:1}.hm__center,.hm__center-layers{overflow:visible;position:relative}.hm__center-layers{width:100%}.hm__outline,.hm__photo{display:block;height:auto;-webkit-mask-image:linear-gradient(180deg,#000 55%,#0000 95%);mask-image:linear-gradient(180deg,#000 55%,#0000 95%);position:relative;width:100%}.hm__photo{filter:grayscale(100%) contrast(1.05)}.hm__photo-color{display:block;filter:contrast(1.05) saturate(1.1);height:auto;-webkit-mask-image:linear-gradient(180deg,#000 30%,#0000 70%);mask-image:linear-gradient(180deg,#000 30%,#0000 70%);pointer-events:none;width:100%}.hm__code-mask,.hm__outline,.hm__photo-color{left:0;position:absolute;top:0}.hm__code-mask{height:100%;overflow:hidden;width:100%}.hm__compile-canvas{display:block;height:100%;width:100%}.hm__code-leak{bottom:0;height:40%;left:0;overflow:visible;transform:translateY(100%);width:100%}.hm__code-leak,.hm__scroll-hint{pointer-events:none;position:absolute}.hm__scroll-hint{align-items:center;bottom:2rem;display:flex;flex-direction:column;gap:.5rem;left:50%;transform:translateX(-50%);z-index:5}.hm__scroll-line{background:linear-gradient(180deg,#ffffff40,#0000);width:1px}.hm__scroll-label{color:var(--muted);font-family:var(--mono);font-size:.55rem;letter-spacing:3px;text-transform:uppercase}.hm__circuit-bg:before{display:none}.hm__code-block{background:#0a0a0a;border:1px solid #ffffff14;border-radius:10px;overflow:hidden;position:relative;z-index:1}.hm__code-block-header{align-items:center;background:#ffffff05;border-bottom:1px solid #ffffff0f;display:flex;gap:.35rem;padding:.6rem .85rem}.hm__code-block-dot{background:#ffffff1a;border-radius:50%;height:7px;width:7px}.hm__code-block-file{color:var(--muted);flex:1 1;font-family:var(--mono);font-size:.65rem;letter-spacing:.3px;margin-left:.5rem}.hm__code-block-body{overflow-x:auto;padding:.85rem}.hm__run-btn{align-items:center;background:#ffffff0a;border:1px solid #ffffff14;border-radius:4px;color:var(--muted);cursor:pointer;display:inline-flex;font-family:var(--mono);font-size:.6rem;gap:.3rem;letter-spacing:.5px;padding:.2rem .5rem;text-transform:uppercase;transition:all .2s}.hm__run-btn:hover{background:#c0303014;border-color:#c030304d;color:#e04040}.hm__run-btn--ran{border-color:#c0303033;color:#e04040}.hm__run-output{border-top:1px solid #ffffff0f;overflow:hidden}.hm__run-output-inner{padding:.85rem}.hm__run-output-bar{border-bottom:1px solid #ffffff0a;font-family:var(--mono);font-size:.65rem;margin-bottom:.6rem;padding-bottom:.5rem}.hm__run-output-inner p{color:var(--text);font-size:.82rem;line-height:1.7;margin:0 0 .5rem}.hm__run-output-inner p:last-child{margin-bottom:0}.hm__run-output-inner p strong{color:var(--heading);font-weight:600}.hm__run-links{display:flex;gap:.6rem;margin-top:.75rem}.hm__cl{color:#ffffffb3;font-family:var(--mono);font-size:.7rem;letter-spacing:.2px;line-height:1.8;white-space:pre}.hm__cl--empty{height:.65rem}.hm__cl--kw{color:#ffffff80}.hm__cl--fn{color:#ffffffd9}.hm__cl--st{color:#c03030cc}.hm__cl--cm{color:#ffffff4d}.hm__cl--rd{color:#c03030}.hm__cl--out{color:#fff6;font-style:italic}.hm__cl--out-val{color:#e04040}.hm__about-ascii{align-items:center;background:#060606;border:1px solid #ffffff14;border-radius:10px;display:flex;justify-content:center;overflow:hidden;padding:.5rem}.hm__ascii-art{color:#ffffffb3;font-family:var(--mono);font-size:.28rem;letter-spacing:.02em;line-height:1.1;margin:0;-webkit-user-select:none;user-select:none;white-space:pre}.hm__ascii-art--animated .hm__ascii-row{display:block;height:.308rem;white-space:pre}.hm__ascii-char{transition:opacity .15s ease}.hm__ascii-loader{align-items:center;display:flex;flex-direction:column;gap:.8rem;height:100%;justify-content:center}.hm__ascii-spinner{color:#ffffff80;font-family:var(--mono);font-size:1.6rem}.hm__ascii-loader-text{color:var(--muted);font-family:var(--mono);font-size:.65rem;letter-spacing:.5px}.hm__below{margin-left:auto;margin-right:auto;margin-top:-100vh;max-width:1100px;padding:0 2rem 4rem;position:relative;z-index:1}.hm__below-grid{grid-gap:.75rem;align-items:stretch;display:grid;gap:.75rem;grid-template-columns:repeat(2,1fr);transform-origin:center top}.hm__below-full,.hm__below-triple{grid-column:span 2}.hm__below-triple{grid-gap:.75rem;align-items:stretch;display:grid;gap:.75rem;grid-template-columns:repeat(3,1fr)}@media (max-width:1100px){.hm__center{width:360px}.hm__side--left{padding-right:2.5rem}.hm__side--right{padding-left:2.5rem}.hm__name{font-size:clamp(2.2rem,4vw,3.2rem)}.hm__role{font-size:clamp(1.3rem,2.5vw,1.8rem)}}@media (max-width:768px){.hm__cinematic-inner{flex-direction:column;gap:1.5rem;padding:2rem 1.5rem}.hm__side--left,.hm__side--right{align-items:center;padding:0;text-align:center}.hm__tags{justify-content:center}.hm__bio{margin-left:auto;margin-right:auto;text-align:center}.hm__ctas{justify-content:center}.hm__center{order:-1;width:260px}.hm__below{padding:.5rem 1.5rem 3rem}.hm__below-grid{grid-template-columns:1fr}.hm__below-full,.hm__below-triple{grid-column:span 1}.hm__below-triple{grid-template-columns:1fr}}@media (max-width:480px){.hm__name{font-size:2rem;letter-spacing:-1px}.hm__role{font-size:1.1rem}.hm__center{width:200px}.hm__spacer{height:350vh}.hm__scroll-hint{display:none}.hm__below{padding:.5rem 1rem 2rem}}.pf{background:#060606;background:var(--lab-bg,#060606);color:#888;color:var(--lab-text,#888);font-family:Inter,system-ui,sans-serif;font-family:var(--lab-sans,"Inter",system-ui,sans-serif);margin:-80px calc(-50vw + 50%) -20px;min-height:100vh;width:100vw}.pf__inner{margin:0 auto;max-width:1200px;padding:7rem 2.5rem 4rem}.pf__header{margin-bottom:2.5rem}.pf__label{color:#555;color:var(--lab-muted,#555);display:block;font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:.7rem;letter-spacing:3px;margin-bottom:.75rem;text-transform:uppercase}.pf__title{color:#f0f0f0;color:var(--lab-heading,#f0f0f0);font-family:Inter,system-ui,sans-serif;font-family:var(--lab-sans,"Inter",system-ui,sans-serif);font-size:clamp(2.5rem,5vw,4rem);font-weight:700;letter-spacing:-1.5px}.pf__header-line{background:linear-gradient(90deg,#ffffff26,#0000 60%);height:1px;margin-top:1.25rem;transform-origin:left center}.pf__controls{align-items:center;border-bottom:1px solid #ffffff0f;border-bottom:1px solid var(--lab-border,#ffffff0f);display:flex;gap:1rem;margin-bottom:2rem;padding-bottom:1.25rem}.pf__filters{display:flex;flex:1 1;flex-wrap:wrap;gap:.3rem}.pf__chip{background:none;border:none;border-radius:4px;color:#555;color:var(--lab-muted,#555);cursor:pointer;font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:.68rem;padding:.35rem .75rem;transition:color .2s,background .2s}.pf__chip:hover{color:#888;color:var(--lab-text,#888)}.pf__chip--active{background:#ffffff0f;color:#f0f0f0;color:var(--lab-heading,#f0f0f0)}.pf__search{flex-shrink:0;position:relative;width:200px}.pf__search-icon{color:#555;color:var(--lab-muted,#555);left:.7rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.pf__search-input{background:#0000;border:1px solid #ffffff0f;border:1px solid var(--lab-border,#ffffff0f);border-radius:6px;color:#f0f0f0;color:var(--lab-heading,#f0f0f0);font-family:Inter,system-ui,sans-serif;font-family:var(--lab-sans,"Inter",system-ui,sans-serif);font-size:.82rem;outline:none;padding:.5rem 2rem .5rem 2.2rem;transition:border-color .25s;width:100%}.pf__search-input::placeholder{color:#555;color:var(--lab-muted,#555)}.pf__search-input:focus{border-color:#ffffff26}.pf__search-clear{align-items:center;background:none;border:none;color:#555;color:var(--lab-muted,#555);cursor:pointer;display:flex;padding:2px;position:absolute;right:.5rem;top:50%;transform:translateY(-50%)}.pf__search-clear:hover{color:#f0f0f0;color:var(--lab-heading,#f0f0f0)}.pf__list{display:flex;flex-direction:column}.pf__item{border-top:1px solid #ffffff0f;border-top:1px solid var(--lab-border,#ffffff0f)}.pf__item:last-child{border-bottom:1px solid #ffffff0f;border-bottom:1px solid var(--lab-border,#ffffff0f)}.pf__item-top{align-items:flex-start;cursor:pointer;display:flex;gap:2rem;justify-content:space-between;padding:1.35rem 0;position:relative;transition:background .3s}.pf__item-top:hover{background:hsla(0,0%,100%,.015)}.pf__item-main{flex:1 1;min-width:0}.pf__item-title{color:#f0f0f0;color:var(--lab-heading,#f0f0f0);font-size:1.05rem;font-weight:600;letter-spacing:-.3px;margin-bottom:.3rem;transition:color .25s}.pf__item-top:hover .pf__item-title{color:#fff}.pf__item-desc{color:#555;color:var(--lab-muted,#555);font-size:.84rem;line-height:1.6}.pf__item-right{align-items:center;display:flex;flex-shrink:0;gap:1rem;padding-top:.15rem}.pf__item-cats{display:flex;gap:.3rem}.pf__cat{background:#ffffff0a;border-radius:3px;font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:.6rem;letter-spacing:.5px;padding:.2rem .5rem;text-transform:uppercase;white-space:nowrap}.pf__cat,.pf__item-chevron{color:#555;color:var(--lab-muted,#555)}.pf__item-chevron{display:inline-flex;transition:color .25s}.pf__item-top:hover .pf__item-chevron{color:#f0f0f0;color:var(--lab-heading,#f0f0f0)}.pf__item-detail{overflow:hidden}.pf__item-detail-inner{padding:0 0 1.5rem}.pf__item-long{color:#888;color:var(--lab-text,#888);font-size:.9rem;line-height:1.75;margin-bottom:1.25rem;max-width:720px}.pf__item-techs{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1.25rem}.pf__tech{border:1px solid #ffffff0f;border:1px solid var(--lab-border,#ffffff0f);border-radius:100px;color:#888;color:var(--lab-text,#888);font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:.68rem;padding:.25rem .6rem;transition:border-color .2s,color .2s}.pf__tech:hover{border-color:#ffffff1f;color:#f0f0f0;color:var(--lab-heading,#f0f0f0)}.pf__item-links{display:flex;gap:.6rem}.pf__link{align-items:center;border:1px solid #ffffff0f;border:1px solid var(--lab-border,#ffffff0f);border-radius:6px;color:#f0f0f0;color:var(--lab-heading,#f0f0f0);display:inline-flex;font-size:.8rem;font-weight:500;gap:.4rem;padding:.45rem 1rem;text-decoration:none;transition:border-color .25s,background .25s}.pf__link:hover{background:#ffffff0a;border-color:#ffffff26}.pf__empty{padding:3rem 2rem;text-align:center}.pf__empty p{color:#888;color:var(--lab-text,#888);font-size:.9rem;margin-bottom:1rem}.pf__reset{background:#0000;border:1px solid #ffffff1f;border-radius:6px;color:#f0f0f0;color:var(--lab-heading,#f0f0f0);cursor:pointer;font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:.72rem;padding:.45rem 1rem;transition:background .25s}.pf__reset:hover{background:#f0f0f0;background:var(--lab-heading,#f0f0f0);color:#060606;color:var(--lab-bg,#060606)}@media (max-width:768px){.pf__inner{padding:6rem 1.5rem 3rem}.pf__controls{align-items:stretch;flex-direction:column}.pf__search{width:100%}.pf__filters{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto;padding-bottom:.25rem}.pf__item-top{flex-direction:column;gap:.75rem}.pf__item-right{justify-content:space-between;width:100%}}@media (max-width:480px){.pf__inner{padding:5.5rem 1rem 2rem}.pf__title{font-size:2rem}.pf__item-cats{flex-wrap:wrap}}.rp{background:#060606;background:var(--lab-bg,#060606);color:#888;color:var(--lab-text,#888);font-family:Inter,system-ui,sans-serif;font-family:var(--lab-sans,"Inter",system-ui,sans-serif);margin:-80px calc(-50vw + 50%) -20px;min-height:100vh;width:100vw}.rp__inner{margin:0 auto;max-width:1200px;padding:7rem 2.5rem 4rem}.rp__header{margin-bottom:2rem}.rp__label{color:#555;color:var(--lab-muted,#555);display:inline-block;font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:.7rem;letter-spacing:3px;margin-bottom:.75rem;text-transform:uppercase}.rp__title{color:#f0f0f0;color:var(--lab-heading,#f0f0f0);display:flex;font-family:Inter,system-ui,sans-serif;font-family:var(--lab-sans,"Inter",system-ui,sans-serif);font-size:clamp(2.8rem,6vw,4.5rem);font-weight:700;letter-spacing:-2px;line-height:1;overflow:hidden;perspective:800px}.rp__title-char{display:inline-block;transform-origin:bottom center}.rp__stats-bar{border-top:1px solid #ffffff0f;border-top:1px solid var(--lab-border,#ffffff0f);gap:1.25rem;margin-top:1.5rem;padding-top:1.25rem}.rp__stat-block,.rp__stats-bar{align-items:center;display:flex}.rp__stat-block{gap:.4rem}.rp__stat-num{color:#f0f0f0;color:var(--lab-heading,#f0f0f0);font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:1.4rem;font-weight:600}.rp__stat-lbl{font-size:.72rem;letter-spacing:1px;text-transform:uppercase}.rp__stat-icon,.rp__stat-lbl{color:#555;color:var(--lab-muted,#555)}.rp__stat-sep{background:#ffffff0f;background:var(--lab-border,#ffffff0f);height:24px;width:1px}.rp__lang-bar{background:#0a0a0a;background:var(--lab-surface,#0a0a0a);border-radius:2px;display:flex;gap:2px;height:4px;margin-top:2rem;overflow:hidden}.rp__lang-seg{border-radius:2px;height:100%;min-width:3px}.rp__lang-legend{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.6rem}.rp__lang-legend-item{align-items:center;color:#555;color:var(--lab-muted,#555);display:flex;font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:.7rem;gap:.35rem}.rp__lang-legend-dot{border-radius:50%;flex-shrink:0;height:6px;width:6px}.rp__filters{border-bottom:1px solid #ffffff0f;border-bottom:1px solid var(--lab-border,#ffffff0f);display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:2.5rem;margin-top:1.75rem;padding-bottom:1.5rem}.rp__filter{align-items:center;background:none;border:none;border-radius:20px;color:#555;color:var(--lab-muted,#555);cursor:pointer;display:flex;font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:.7rem;gap:.35rem;padding:.4rem .85rem;position:relative;transition:color .2s;z-index:1}.rp__filter:hover{color:#888;color:var(--lab-text,#888)}.rp__filter--on{color:#f0f0f0;color:var(--lab-heading,#f0f0f0)}.rp__filter-dot{border-radius:50%;flex-shrink:0;height:6px;width:6px}.rp__filter-dot,.rp__filter-text{position:relative;z-index:2}.rp__filter-bg{background:#ffffff0f;border:1px solid #ffffff14;border-radius:20px;inset:0;position:absolute;z-index:0}.rp__grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,1fr)}.rp__card-wrap--feat{grid-column:span 2;grid-row:span 2}.rp__card{background:#0d0d0d;background:var(--lab-card,#0d0d0d);border:1px solid #ffffff0f;border:1px solid var(--lab-border,#ffffff0f);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;height:100%;overflow:hidden;padding:1.5rem;position:relative;transition:border-color .3s,box-shadow .3s;will-change:transform}.rp__card:hover{border-color:#ffffff1a;box-shadow:0 8px 32px -8px #00000080,0 0 0 1px #ffffff0a}.rp__card-wrap--feat .rp__card{padding:2rem}.rp__spotlight{border-radius:inherit;inset:0;pointer-events:none;position:absolute;z-index:0}.rp__card-idx{color:#ffffff0f;font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:.62rem;font-weight:600;letter-spacing:2px;margin-bottom:1rem;position:relative;transition:color .3s;z-index:1}.rp__card:hover .rp__card-idx{color:#555;color:var(--lab-muted,#555)}.rp__card-wrap--feat .rp__card-idx{font-size:.8rem;margin-bottom:1.5rem}.rp__card-head{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.6rem;position:relative;z-index:1}.rp__card-name{color:#f0f0f0;color:var(--lab-heading,#f0f0f0);font-size:.95rem;font-weight:600;letter-spacing:-.2px;word-break:break-word}.rp__card-wrap--feat .rp__card-name{font-size:1.4rem;letter-spacing:-.6px}.rp__card-arrow{color:#555;color:var(--lab-muted,#555);flex-shrink:0;opacity:0;transform:translate(-4px,4px);transition:all .3s cubic-bezier(.22,1,.36,1)}.rp__card:hover .rp__card-arrow{opacity:1;transform:translate(0)}.rp__card-desc{color:#888;color:var(--lab-text,#888);font-size:.8rem;line-height:1.6;margin-bottom:auto;padding-bottom:1rem;position:relative;z-index:1}.rp__card-wrap--feat .rp__card-desc{font-size:.9rem;line-height:1.65}.rp__card-foot{justify-content:space-between;margin-top:auto;position:relative;z-index:1}.rp__card-foot,.rp__card-lang{align-items:center;display:flex}.rp__card-lang{color:#888;color:var(--lab-text,#888);font-size:.75rem;gap:.35rem}.rp__card-lang-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.rp__card-stats{display:flex;gap:.6rem}.rp__card-stat{align-items:center;color:#555;color:var(--lab-muted,#555);display:flex;font-size:.73rem;gap:.25rem}.rp__card-stat svg{height:12px;width:12px}.rp__skeleton{background:#0d0d0d;background:var(--lab-card,#0d0d0d);border:1px solid #ffffff0f;border:1px solid var(--lab-border,#ffffff0f);border-radius:12px;display:flex;flex-direction:column;gap:.75rem;padding:1.5rem}.rp__skeleton--feat{grid-column:span 2;grid-row:span 2;padding:2rem}.rp__sk-line{animation:rpShimmer 1.5s ease infinite;background:linear-gradient(90deg,#0a0a0a 25%,#ffffff0a 50%,#0a0a0a 75%);background:linear-gradient(90deg,var(--lab-surface,#0a0a0a) 25%,#ffffff0a 50%,var(--lab-surface,#0a0a0a) 75%);background-size:200% 100%;border-radius:4px;height:12px}.rp__sk-line--title{height:16px;width:55%}.rp__sk-line--desc{width:90%}.rp__sk-line--short{width:40%}.rp__sk-line--foot{margin-top:auto;width:28%}@keyframes rpShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.rp__error{background:#ef44440f;border:1px solid #ef444426;border-radius:8px;color:#ef4444;font-size:.9rem;padding:1.5rem;text-align:center}.rp__overlay{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#000000b8;display:flex;inset:0;justify-content:center;padding:2rem;position:fixed;z-index:9999}.rp__modal{background:#0d0d0d;background:var(--lab-card,#0d0d0d);border:1px solid #ffffff0f;border:1px solid var(--lab-border,#ffffff0f);border-radius:16px;max-height:80vh;max-width:520px;overflow-y:auto;padding:2rem;position:relative;width:100%}.rp__modal-close{align-items:center;background:none;border:1px solid #ffffff0f;border:1px solid var(--lab-border,#ffffff0f);border-radius:8px;color:#555;color:var(--lab-muted,#555);cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:color .2s,border-color .2s;width:32px}.rp__modal-close:hover{border-color:#ffffff1f;color:#f0f0f0;color:var(--lab-heading,#f0f0f0)}.rp__modal-top{align-items:center;display:flex;gap:1rem;margin-bottom:1.25rem}.rp__modal-gh{color:#555;color:var(--lab-muted,#555);flex-shrink:0}.rp__modal-name{color:#f0f0f0;color:var(--lab-heading,#f0f0f0);font-size:1.35rem;font-weight:700;letter-spacing:-.5px;line-height:1.2}.rp__modal-lang{align-items:center;display:flex;font-size:.78rem;gap:.35rem;margin-top:.3rem}.rp__modal-desc,.rp__modal-lang{color:#888;color:var(--lab-text,#888)}.rp__modal-desc{font-size:.88rem;line-height:1.65;margin-bottom:1.5rem}.rp__modal-stats{border-bottom:1px solid #ffffff0f;border-bottom:1px solid var(--lab-border,#ffffff0f);border-top:1px solid #ffffff0f;border-top:1px solid var(--lab-border,#ffffff0f);display:flex;gap:1.5rem;margin-bottom:1rem;padding:1rem 0}.rp__modal-stat{align-items:center;color:#555;color:var(--lab-muted,#555);display:flex;gap:.4rem}.rp__modal-stat svg{height:16px;width:16px}.rp__modal-stat-val{color:#f0f0f0;color:var(--lab-heading,#f0f0f0);font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:1rem;font-weight:600}.rp__modal-stat-lbl{font-size:.7rem;letter-spacing:1px;text-transform:uppercase}.rp__modal-topics{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1rem}.rp__modal-topic{background:#ffffff0a;border:1px solid #ffffff0f;border:1px solid var(--lab-border,#ffffff0f);border-radius:4px;color:#888;color:var(--lab-text,#888);font-size:.66rem;padding:.3rem .65rem}.rp__modal-dates,.rp__modal-topic{font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace)}.rp__modal-dates{color:#555;color:var(--lab-muted,#555);display:flex;font-size:.7rem;gap:1.5rem;margin-bottom:1.5rem}.rp__modal-link{align-items:center;background:#ffffff0f;border:1px solid #ffffff14;border-radius:8px;color:#f0f0f0;color:var(--lab-heading,#f0f0f0);display:inline-flex;font-size:.82rem;font-weight:500;gap:.5rem;padding:.7rem 1.5rem;text-decoration:none}.rp__modal-link:hover{background:#fff;border-color:#0000;color:#060606}@media (max-width:1024px){.rp__grid{grid-template-columns:repeat(2,1fr)}.rp__card-wrap--feat{grid-column:span 2;grid-row:span 1}}@media (max-width:768px){.rp__inner{padding:6rem 1.5rem 3rem}.rp__title{font-size:2.2rem;letter-spacing:-1px}.rp__grid{grid-template-columns:1fr}.rp__card-wrap--feat{grid-column:span 1;grid-row:span 1}.rp__stats-bar{flex-wrap:wrap;gap:.75rem}.rp__stat-num{font-size:1.1rem}.rp__filters{gap:.25rem}.rp__modal{padding:1.5rem}.rp__skeleton--feat{grid-column:span 1;grid-row:span 1}}@media (max-width:480px){.rp__inner{padding:5.5rem 1rem 2rem}.rp__card,.rp__card-wrap--feat .rp__card{padding:1.2rem}}.tracing-beam__track{left:-5rem;position:absolute;top:.75rem}@media (max-width:768px){.tracing-beam__track{display:none}}.bl{background:#060606;color:#888;font-family:Inter,system-ui,sans-serif;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);margin-top:-80px;min-height:100vh;width:100vw}.bl__inner{margin:0 auto;max-width:1200px;padding:7rem 2.5rem 4rem}.bl__header{margin-bottom:3.5rem}.bl__label{color:#555;display:block;font-family:JetBrains Mono,monospace;font-size:.7rem;letter-spacing:3px;margin-bottom:.75rem;text-transform:uppercase}.bl__title{color:#f0f0f0;font-family:Inter,system-ui,sans-serif;font-size:clamp(2.5rem,5vw,4rem);font-weight:700;letter-spacing:-1.5px}.bl__header-line{background:linear-gradient(90deg,#ffffff26,#0000 60%);height:1px;margin-top:1.25rem;transform-origin:left center}.bl__posts{display:flex;flex-direction:column;gap:0}.bl__post-card{grid-gap:2rem;border-top:1px solid #ffffff0f;cursor:pointer;display:grid;gap:2rem;grid-template-columns:280px 1fr;padding:2rem 0;transition:background .3s}.bl__post-card:last-child{border-bottom:1px solid #ffffff0f}.bl__post-card:hover{background:hsla(0,0%,100%,.015)}.bl__post-thumb{aspect-ratio:16/10;border:1px solid #ffffff0f;border-radius:6px;filter:saturate(.85);object-fit:cover;width:100%}.bl__post-info{display:flex;flex-direction:column;justify-content:center}.bl__post-date{color:#555;font-family:JetBrains Mono,monospace;font-size:.65rem;letter-spacing:1.5px;margin-bottom:.5rem;text-transform:uppercase}.bl__post-title{color:#f0f0f0;font-size:1.4rem;font-weight:600;letter-spacing:-.3px;margin-bottom:.6rem}.bl__post-excerpt{color:#888;font-size:.88rem;line-height:1.7;margin-bottom:.75rem}.bl__post-tags{display:flex;flex-wrap:wrap;gap:.4rem}.bl__post-tag{background:#c030300d;border:1px solid #c0303033;border-radius:3px;color:#e04040;font-size:.62rem;padding:.2rem .5rem}.bl__back,.bl__post-tag{font-family:JetBrains Mono,monospace}.bl__back{align-items:center;background:none;border:none;color:#555;cursor:pointer;display:inline-flex;font-size:.7rem;gap:.4rem;letter-spacing:1.5px;margin-bottom:2.5rem;padding:0;text-transform:uppercase;transition:color .25s}.bl__back:hover{color:#f0f0f0}.bl__article-header{margin-bottom:2.5rem}.bl__article-date{color:#555;display:block;font-family:JetBrains Mono,monospace;font-size:.65rem;letter-spacing:1.5px;margin-bottom:.75rem;text-transform:uppercase}.bl__article-title{color:#f0f0f0;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;letter-spacing:-1px;line-height:1.15;margin-bottom:1rem}.bl__article-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.bl__article-line{background:linear-gradient(90deg,#ffffff26,#0000 60%);height:1px;transform-origin:left center}.bl__body{max-width:720px}.bl__body h2{color:#f0f0f0;font-family:"Instrument Serif",Georgia,serif;font-size:1.4rem;font-style:italic;font-weight:400;letter-spacing:-.3px;margin-bottom:1.25rem;margin-top:3rem}.bl__body p{color:#888;font-size:.95rem;line-height:1.85;margin-bottom:1.25rem}.bl__body strong{color:#f0f0f0;font-weight:600}.bl__body em{color:#aaa}.bl__img-row{grid-gap:1rem;display:grid;gap:1rem;margin:2rem 0}.bl__img-row--2{align-items:stretch;grid-template-columns:1fr 1fr}.bl__img-row--3{grid-template-columns:1fr 1fr 1fr}.bl__img-row--1{grid-template-columns:1fr;max-width:560px}.bl__img-wrap{border:1px solid #ffffff0f;border-radius:6px;height:280px;overflow:hidden}.bl__img-wrap--tall{height:auto;max-height:none}.bl__img-wrap img,.bl__img-wrap video{display:block;filter:saturate(.85);height:100%;object-fit:cover;width:100%}.bl__img-caption{color:#555;font-family:JetBrains Mono,monospace;font-size:.62rem;letter-spacing:.5px;margin-top:.5rem;text-align:center}.bl__divider{background:linear-gradient(90deg,#0000,#ffffff0f 20%,#ffffff0f 80%,#0000);height:1px;margin:2.5rem 0}@media (max-width:768px){.bl__inner{padding:6rem 1.5rem 3rem}.bl__post-card{gap:1rem;grid-template-columns:1fr}.bl__post-thumb{max-height:200px}.bl__img-row--2,.bl__img-row--3{grid-template-columns:1fr}}@media (max-width:480px){.bl__inner{padding:5.5rem 1rem 2rem}.bl__title{font-size:2rem}.bl__article-title{font-size:1.6rem}}.ct{background:#060606;background:var(--lab-bg,#060606);color:#888;color:var(--lab-text,#888);font-family:Inter,system-ui,sans-serif;font-family:var(--lab-sans,"Inter",system-ui,sans-serif);margin:-80px calc(-50vw + 50%) -20px;min-height:100vh;width:100vw}.ct__inner{margin:0 auto;max-width:1200px;padding:7rem 2.5rem 4rem}.ct__header{margin-bottom:3rem}.ct__eyebrow{color:#555;color:var(--lab-muted,#555);display:block;font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:.7rem;letter-spacing:3px;margin-bottom:.75rem;text-transform:uppercase}.ct__title{color:#f0f0f0;color:var(--lab-heading,#f0f0f0);font-family:Inter,system-ui,sans-serif;font-family:var(--lab-sans,"Inter",system-ui,sans-serif);font-size:clamp(2.5rem,5vw,4rem);font-weight:700;letter-spacing:-1.5px;margin:0}.ct__subtitle{color:#888;color:var(--lab-text,#888);font-size:.95rem;line-height:1.75;margin-top:1rem;max-width:520px}.ct__header-line{background:linear-gradient(90deg,#ffffff26,#0000 60%);height:1px;margin-top:1.25rem;transform-origin:left center}.ct__info{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between;margin-bottom:3rem}.ct__info-list{display:flex;flex-direction:column;gap:.6rem}.ct__info-item{align-items:center;color:#888;color:var(--lab-text,#888);display:inline-flex;font-size:.88rem;gap:.6rem;text-decoration:none;transition:color .25s}a.ct__info-item:hover{color:#f0f0f0;color:var(--lab-heading,#f0f0f0)}.ct__info-item--static{cursor:default}.ct__info-arrow{opacity:0;transform:translate(-3px,3px);transition:all .25s}a.ct__info-item:hover .ct__info-arrow{opacity:.6;transform:translate(0)}.ct__socials{display:flex;gap:.6rem}.ct__social{align-items:center;border:1px solid #ffffff0f;border:1px solid var(--lab-border,#ffffff0f);border-radius:4px;color:#888;color:var(--lab-text,#888);display:inline-flex;font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:.72rem;gap:.4rem;letter-spacing:.3px;padding:.4rem .8rem;text-decoration:none;transition:border-color .25s,color .25s}.ct__social:hover{border-color:#ffffff26;color:#f0f0f0;color:var(--lab-heading,#f0f0f0)}.ct__form-section{margin-top:1rem}.ct__form-title{color:#f0f0f0;color:var(--lab-heading,#f0f0f0);font-family:"Instrument Serif",Georgia,serif;font-size:1.4rem;font-style:italic;font-weight:400;letter-spacing:-.3px;margin-bottom:1.5rem}.ct__form{grid-gap:1.5rem 1.25rem;display:grid;gap:1.5rem 1.25rem;grid-template-columns:1fr 1fr}.ct__field{position:relative}.ct__field--full{grid-column:span 2}.ct__input{background:#0000;border:none;border-bottom:1px solid #ffffff0f;border-bottom:1px solid var(--lab-border,#ffffff0f);color:#f0f0f0;color:var(--lab-heading,#f0f0f0);font-family:Inter,system-ui,sans-serif;font-family:var(--lab-sans,"Inter",system-ui,sans-serif);font-size:.92rem;line-height:1.5;outline:none;padding:1.2rem 0 .5rem;transition:border-color .3s;width:100%}textarea.ct__input{min-height:120px;resize:none}.ct__input::placeholder{color:#0000}.ct__input:focus{border-color:#ffffff26}.ct__label{color:#555;color:var(--lab-muted,#555);font-size:.85rem;left:0;pointer-events:none;position:absolute;top:1.2rem;transition:all .25s ease}.ct__input:focus~.ct__label,.ct__input:not(:placeholder-shown)~.ct__label{color:#888;color:var(--lab-text,#888);font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:.65rem;letter-spacing:1px;text-transform:uppercase;top:0}.ct__bar{background:#f0f0f0;background:var(--lab-heading,#f0f0f0);bottom:0;height:2px;left:0;pointer-events:none;position:absolute;right:0;transform-origin:left}.ct__form-footer{gap:1rem;grid-column:span 2;justify-content:space-between;padding-top:1.5rem}.ct__form-footer,.ct__status{align-items:center;display:flex}.ct__status{border-radius:100px;font-size:.8rem;gap:.45rem;padding:.4rem .9rem}.ct__status--ok{background:#c0303012;border:1px solid #c030301f;color:#e04040}.ct__status--err{background:#ef444412;border:1px solid #ef44441f;color:#f87171}.ct__hint{color:#555;color:var(--lab-muted,#555);font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:.65rem;letter-spacing:.5px}.ct__submit{align-items:center;background:#f0f0f0;background:var(--lab-heading,#f0f0f0);border:none;border-radius:6px;color:#060606;cursor:pointer;display:inline-flex;flex-shrink:0;font-family:Inter,system-ui,sans-serif;font-family:var(--lab-sans,"Inter",system-ui,sans-serif);font-size:.82rem;font-weight:600;gap:.5rem;padding:.7rem 1.6rem;transition:background .25s,transform .2s}.ct__submit:hover{background:#e0e0e0;transform:translateY(-1px)}.ct__submit:disabled{cursor:not-allowed;opacity:.4;transform:none}.ct__spinner{animation:ctSpin .7s linear infinite;border:2px solid #06060633;border-radius:50%;border-top-color:#060606;display:inline-block;flex-shrink:0;height:14px;width:14px}@keyframes ctSpin{to{transform:rotate(1turn)}}@media (max-width:768px){.ct__inner{padding:6rem 1.5rem 3rem}.ct__info{flex-direction:column;gap:1.5rem}.ct__form{grid-template-columns:1fr}.ct__field--full,.ct__form-footer{grid-column:span 1}.ct__form-footer{align-items:flex-start;flex-direction:column}}@media (max-width:480px){.ct__inner{padding:5.5rem 1rem 2rem}.ct__title{font-size:2rem}.ct__socials{flex-direction:column}}.ls{align-items:center;background:#060606;background:var(--lab-bg,#060606);display:flex;flex-direction:column;inset:0;justify-content:center;position:fixed;transition:opacity .5s ease-out,visibility .5s ease-out;z-index:9999}.ls--visible{opacity:1;pointer-events:all;visibility:visible}.ls--hidden{opacity:0;pointer-events:none;visibility:hidden}.ls__brand{color:#f0f0f0;color:var(--lab-heading,#f0f0f0);display:inline-flex;font-family:JetBrains Mono,monospace;font-family:var(--lab-mono,"JetBrains Mono",monospace);font-size:1.8rem;font-weight:500;letter-spacing:-2px;margin-bottom:1.5rem}.ls__char{display:inline-block;opacity:0;will-change:transform,opacity}.ls__dots{display:flex;gap:6px;margin-bottom:1.25rem}.ls__dots span{background:#aaa;background:var(--lab-muted,#aaa);border-radius:50%;height:5px;width:5px;will-change:transform,opacity}.ls__bar-track{background:#ffffff14;border-radius:1px;height:1px;overflow:hidden;width:140px}.ls__bar{background:linear-gradient(90deg,#fff0,#fffc 50%,#fff0);height:100%;transform:scaleX(0);transform-origin:left center;width:100%}.anim-char{display:inline-block;will-change:transform,opacity,filter}.anim-underline{position:relative}.anim-underline:after{background:currentColor;bottom:-2px;content:"";height:1px;left:0;opacity:.8;position:absolute;right:0;transform:scaleX(0);transform-origin:left center;transition:transform .55s cubic-bezier(.16,1,.3,1)}.anim-underline:focus-visible:after,.anim-underline:hover:after{transform:scaleX(1)}@keyframes anim-fade-up{0%{filter:blur(8px);opacity:0;transform:translateY(24px)}to{filter:blur(0);opacity:1;transform:translateY(0)}}.anim-fade-up{animation:anim-fade-up .8s cubic-bezier(.16,1,.3,1) both}@keyframes anim-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.anim-shimmer{-webkit-text-fill-color:#0000;animation:anim-shimmer 3.5s linear infinite;background:linear-gradient(90deg,#ffffff8c,#fff 50%,#ffffff8c);-webkit-background-clip:text;background-clip:text;background-size:200% 100%}.anim-link-hover{position:relative;transition:color .3s ease,transform .3s ease}.anim-link-hover:hover{transform:translateY(-1px)}:root{--lab-bg:#060606;--lab-surface:#0a0a0a;--lab-card:#0d0d0d;--lab-border:#ffffff0f;--lab-accent:#e0e0e0;--lab-accent-dim:#ffffff0a;--lab-accent-glow:#ffffff14;--lab-red:#c03030;--lab-red-dim:#c0303014;--lab-text:#888;--lab-heading:#f0f0f0;--lab-muted:#555;--lab-white:#fff;--lab-mono:"JetBrains Mono","Fira Code","SF Mono",monospace;--lab-sans:"Inter","Segoe UI",system-ui,sans-serif;--highlight-purple:#888;--highlight-purple-light:#f0f0f0;--dark-bg:#060606;--dark-bg-secondary:#0a0a0a;--dark-text-primary:#f0f0f0;--dark-text-secondary:#888;--light-bg:#060606;--light-bg-secondary:#0a0a0a;--light-text-primary:#f0f0f0;--light-text-secondary:#888;--transition-speed:0.2s}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#060606;background-color:var(--lab-bg);color:#888;color:var(--lab-text);font-family:Inter,Segoe UI,system-ui,sans-serif;font-family:var(--lab-sans);line-height:1.5}.app{min-height:100vh;position:relative;transition:background-color .3s ease}.main-content{margin:0 auto;max-width:1200px;padding:80px 20px 20px;position:relative;z-index:1}.profile-container{height:250px;margin:0 auto;position:relative;width:250px}.profile-image-container{border:2px solid #00b4d880;border-radius:50%;box-shadow:0 0 20px #00b4d833;height:250px;overflow:hidden;position:relative;transition:transform .3s ease;width:250px;z-index:2}.profile-image-container:hover{transform:scale(1.05)}.profile-image-container img{display:block;height:100%;object-fit:cover;object-position:center 30%;transition:all .3s ease;width:100%}.profile-glow{background:radial-gradient(circle,#00b4d833 0,#00b4d800 70%);border-radius:50%;height:260px;width:260px;z-index:1}.orbit,.profile-glow{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.orbit{animation:rotate linear infinite;border:1px solid #00b4d833;border-radius:50%}.orbit-1{animation-duration:20s;height:280px;width:280px}.orbit-2{animation-duration:25s;height:300px;width:300px}.orbit-dot{background-color:#888;background-color:var(--highlight-purple);border-radius:50%;box-shadow:0 0 10px #00b4d880;height:8px;left:50%;position:absolute;top:-4px;transform:translateX(-50%);width:8px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes rotate{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0) translateX(-50%)}40%{transform:translateY(-30px) translateX(-50%)}60%{transform:translateY(-15px) translateX(-50%)}}@keyframes scrollBounce{0%,20%,50%,80%,to{transform:translateY(0) translateX(-50%)}40%{transform:translateY(5px) translateX(-50%)}60%{transform:translateY(2px) translateX(-50%)}}.button{background-color:#1a1a1a;border:1px solid #333;border-radius:4px;color:#e5e5e5;cursor:pointer;padding:10px 20px;transition:all .2s ease;transition:all var(--transition-speed) ease}.button:hover{border-color:#888;border-color:var(--highlight-purple);box-shadow:0 2px 8px #00b4d81a;color:#888;color:var(--highlight-purple);transform:translateY(-2px)}.nav-link{color:#e5e5e5;position:relative;text-decoration:none;transition:all .2s ease;transition:all var(--transition-speed) ease}.nav-link:after{background-color:#888;background-color:var(--highlight-purple);bottom:-2px;content:"";height:2px;left:0;position:absolute;transition:width .2s ease;transition:width var(--transition-speed) ease;width:0}.nav-link:hover:after{width:100%}.nav-link:hover{color:#f0f0f0;color:var(--highlight-purple-light)}.input{background-color:#1a1a1a;border:1px solid #333;border-radius:4px;color:#e5e5e5;padding:8px 16px;transition:all .2s ease;transition:all var(--transition-speed) ease}.input:focus{border-color:#888;border-color:var(--highlight-purple);box-shadow:0 0 0 2px #00b4d81a;outline:none}.card{background-color:#1a1a1a;border:1px solid #333;border-radius:8px;padding:20px;transition:all .2s ease;transition:all var(--transition-speed) ease}.card:hover{border-color:#888;border-color:var(--highlight-purple);box-shadow:0 4px 12px #0000001a;transform:translateY(-4px)}.dark-mode .nav-link{color:var(--dark-text)}.dark-mode .button,.dark-mode .input{color:var(--dark-text)}.dark-mode .button,.dark-mode .card,.dark-mode .input{background-color:#060606;background-color:var(--dark-bg);border-color:#333}.theme-toggle{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:flex;gap:8px;padding:8px;transition:all .2s ease;transition:all var(--transition-speed) ease}.theme-toggle:hover{transform:translateY(-2px)}@media (max-width:768px){.main-content{padding:70px 15px 15px}.page-title{font-size:1.5em}.profile-container,.profile-image-container{height:200px;width:200px}.orbit-1{height:230px;width:230px}.orbit-2{height:250px;width:250px}}.home-container{min-height:100vh;overflow-x:hidden}.banner-section{height:100vh;overflow:hidden;position:relative}.content-section{min-height:100vh;position:relative;transform:translateZ(0);will-change:transform}.page-container{animation:scaleIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #00b4d81a;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;transition:all .2s ease;transition:all var(--transition-speed) ease}.dark-mode .page-container{box-shadow:0 2px 4px #0003}.page-title{animation:slideIn .3s ease-out;color:#f0f0f0;color:var(--highlight-purple-light);font-size:2em;font-weight:700;margin-bottom:20px}.page-content{animation:fadeIn .4s ease-out;line-height:1.6;margin-bottom:20px}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#ffffff0f;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff1f}:focus{outline:2px solid #ffffff26;outline-offset:2px}::selection{background-color:#ffffff1f;color:inherit}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.spinner{animation:spin 1s ease-in-out infinite;border:3px solid #00b4d833;border-radius:50%;border-top:3px solid var(--highlight-purple);height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}html{font-size:16px}body{overflow-x:hidden}@media (max-width:768px){html{font-size:14px}h1{font-size:2rem!important}h2{font-size:1.5rem!important}h3{font-size:1.2rem!important}p{font-size:1rem!important}}@media (max-width:480px){html{font-size:13px}}@media (max-width:768px){.about-content,.contact-content,.content-sections section,.portfolio-content,.repos-content{padding:0 1rem!important}nav{height:60px!important}.hero-content{padding-top:2rem!important;text-align:center!important}.hero-content,.hero-text{flex-direction:column!important}.hero-text{align-items:center!important;display:flex!important}.profile-container{margin-bottom:2rem!important;transform:scale(.8)!important}.projects-grid,.repos-grid,.skills-grid{grid-template-columns:1fr!important}.project-card{width:100%!important}.bio-container,.contact-layout,.form-row{flex-direction:column!important}.bio-image-container{margin:0 auto 2rem!important;max-width:300px!important;position:relative!important;top:0!important;width:100%!important}}@media (max-width:480px){.main-content{padding:65px 10px 10px!important}.profile-container{transform:scale(.7)!important}.hero-buttons{flex-direction:column!important;gap:.75rem!important;width:100%!important}.primary-button,.resume-button,.secondary-button,.submit-button{justify-content:center!important;width:100%!important}.tech-tags{max-height:100px;overflow-y:auto}}.vanta-background{height:100vh!important;position:fixed!important}@media (max-width:768px){.modal-overlay{padding:1rem!important}.modal-container{max-height:90vh!important;width:95%!important}.modal-image{height:200px!important}.modal-content{padding:1rem!important}.modal-title{font-size:1.4rem!important}.proficiency-grid{grid-gap:1rem!important;display:grid!important;gap:1rem!important;grid-template-columns:repeat(2,1fr)!important}.proficiency-item{width:100%!important}.desktop-nav{display:none!important}.mobile-menu-button{display:flex!important}.nav-link{display:block!important;padding:1rem 0!important}}@media (min-width:769px){.mobile-menu{display:none!important}}@media (max-height:500px) and (orientation:landscape){.desktop-nav{display:none!important}.mobile-menu-button{display:flex!important}.mobile-menu{max-height:80vh!important;overflow-y:auto!important}}nav .mobile-menu-button{display:none}nav .theme-toggle{z-index:10}.mobile-menu{transition:max-height .3s ease,opacity .3s ease;z-index:999}.mobile-menu a{border-bottom:1px solid #00b4d81a;font-size:1rem!important;padding:1rem 1.5rem!important}nav>div{max-width:1200px;width:100%}@media (max-width:768px){nav>div{justify-content:space-between!important;padding:0 1rem!important}}@media (max-height:500px) and (orientation:landscape){.hero-section{margin-bottom:60px!important;min-height:120vh!important;padding-top:100px!important}.profile-container{margin-top:2rem!important;transform:scale(.5)!important}.hero-content{gap:0!important;padding-top:40px!important}.skills-section{clear:both!important;margin-top:140px!important;padding-top:40px!important}.scroll-indicator{display:none!important}.hero-buttons{margin-bottom:30px!important}}@media (max-width:768px){.primary-button,.secondary-button{justify-content:center!important;text-align:center!important}.hero-buttons,.primary-button,.secondary-button{align-items:center!important;display:flex!important;width:100%!important}.hero-buttons{flex-direction:column!important}.content-sections{margin-top:40px!important}}.skills-section{position:relative!important;z-index:3!important}@media (max-height:400px){.hero-section{min-height:140vh!important;padding-top:120px!important}.skills-section{margin-top:180px!important}}
/*# sourceMappingURL=main.737e3ec5.css.map*/