.nav{z-index:80;height:var(--nav-h);transition:background-color .3s var(--ease), border-color .3s var(--ease);border-bottom:1px solid #0000;position:fixed;top:0;left:0;right:0}.nav--scrolled{border-bottom-color:var(--line);-webkit-backdrop-filter:saturate(140%)blur(12px);backdrop-filter:saturate(140%)blur(12px);background:#09090bb8}.nav__inner{justify-content:space-between;align-items:center;height:100%;display:flex}.nav__logo{font-family:var(--font-display);letter-spacing:-.02em;align-items:center;gap:.6rem;font-size:.98rem;font-weight:600;display:inline-flex}.nav__mark{background:linear-gradient(var(--accent), var(--accent)) 0 0 / 4px 4px no-repeat, linear-gradient(var(--accent), var(--accent)) 8px 4px / 4px 4px no-repeat, linear-gradient(var(--text), var(--text)) 0 8px / 12px 4px no-repeat;width:12px;height:12px;transition:transform .3s var(--ease)}.nav__logo:hover .nav__mark{transform:rotate(90deg)}.nav__links{gap:.25rem;display:flex}.nav__links a{color:var(--text-2);transition:color .2s var(--ease);padding:.5rem .85rem;font-size:.875rem;display:inline-block;position:relative}.nav__links a:after{content:"";transform-origin:100%;height:1px;transition:transform .3s var(--ease);background:currentColor;position:absolute;bottom:.3rem;left:.85rem;right:.85rem;transform:scaleX(0)}.nav__links a:hover,.nav__links a.is-active{color:var(--text)}.nav__links a:hover:after,.nav__links a.is-active:after{transform-origin:0;transform:scaleX(1)}.nav__links a.is-active:after{background:var(--accent)}.nav__toggle{display:none}@media (width<=720px){.nav__toggle{z-index:2;place-content:center;gap:6px;width:44px;height:44px;margin-right:-10px;display:grid;position:relative}.nav__toggle-bar{background:var(--text);width:20px;height:1.5px;transition:transform .3s var(--ease)}.nav--open .nav__toggle-bar:first-of-type{transform:translateY(3.75px)rotate(45deg)}.nav--open .nav__toggle-bar:last-of-type{transform:translateY(-3.75px)rotate(-45deg)}.nav nav{inset:var(--nav-h) 0 auto 0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);visibility:hidden;opacity:0;transition:opacity .25s var(--ease), transform .25s var(--ease), visibility 0s .25s;background:#09090bf5;position:fixed;transform:translateY(-8px)}.nav--open{border-bottom-color:var(--line);background:#09090bf5}.nav--open nav{visibility:visible;opacity:1;transition:opacity .25s var(--ease), transform .25s var(--ease);transform:none}.nav__links{padding:.5rem var(--gutter) 1.25rem;flex-direction:column}.nav__links a{border-bottom:1px solid var(--line);padding:.85rem 0;font-size:1.1rem;display:block}.nav__links a:after{display:none}.nav__links a.is-active{color:var(--accent)}}.hero{min-height:100svh;padding:calc(var(--nav-h) + 4rem) 0 5rem;align-items:center;display:flex}.hero__inner{flex-direction:column;align-items:flex-start;display:flex}.hero__eyebrow{color:var(--text-2);align-items:center;gap:1.25rem;margin-bottom:2rem;font-size:.8rem;display:flex}.hero__sprite{border-radius:var(--radius-sm);flex-shrink:0;width:24px;height:28px;position:relative}.hero__sprite .powerup{pointer-events:none;max-width:none;position:absolute;top:-56px;left:-28px}.hero__title{letter-spacing:-.045em;max-width:14ch;font-size:clamp(2.6rem,7.2vw,5.6rem);font-weight:600;line-height:1.02}.hero__title-sub{color:var(--text-3);display:block}.hero__intro{max-width:54ch;color:var(--text-2);margin-top:2rem;font-size:clamp(1rem,1.4vw,1.125rem);line-height:1.7}.hero__intro strong{color:var(--text);font-weight:500}.hero__cta{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:2.5rem;display:flex}.hero__cta-divider{background:var(--line-strong);width:1px;height:20px;margin:0 .25rem}.hero__stack{font-family:var(--font-mono);color:var(--text-3);flex-wrap:wrap;gap:.4rem 1.25rem;margin-top:4rem;font-size:.75rem;display:flex}.hero__stack li{align-items:center;gap:.5rem;display:flex}.hero__stack li:before{content:"";background:var(--line-strong);width:4px;height:4px}.hero__stack li:first-child:before{background:var(--accent)}@media (width<=480px){.hero{min-height:auto;padding-top:calc(var(--nav-h) + 3.5rem)}.hero__eyebrow{align-items:flex-end;font-size:.7rem}.hero__cta .btn{flex:calc(50% - .375rem);justify-content:center}.hero__cta-divider+.icon-link{margin-left:-10px}.hero__cta-divider{display:none}.hero__stack{margin-top:3rem}}.about{grid-template-columns:1fr 3fr;gap:2rem;display:grid}.about__side .section-label{top:calc(var(--nav-h) + 2rem);position:sticky}.about__lead{letter-spacing:-.025em;color:var(--text);max-width:30ch;font-size:clamp(1.4rem,2.6vw,2rem);font-weight:500;line-height:1.35}.about__facts{border-top:1px solid var(--line);margin-top:3.5rem}.about__fact{border-bottom:1px solid var(--line);grid-template-columns:11rem 1fr;gap:1.5rem;padding:1.1rem 0;display:grid}.about__fact dt{font-family:var(--font-mono);color:var(--text-3);padding-top:.15rem;font-size:.78rem}.about__fact dd{color:var(--text-2)}@media (width<=768px){.about{grid-template-columns:1fr;gap:1.25rem}.about__fact{grid-template-columns:1fr;gap:.25rem}}.stack{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.stack__group{padding:1.75rem 1.5rem .5rem 0}.stack__group+.stack__group{border-left:1px solid var(--line);padding-left:1.5rem}.stack__name{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);margin-bottom:1.25rem;font-size:.75rem;font-weight:400}.stack__item{color:var(--text-2);transition:color .2s var(--ease), transform .25s var(--ease);cursor:default;padding:.35rem 0;font-size:1.05rem;position:relative}.stack__item:before{content:"";background:var(--accent);opacity:0;width:4px;height:4px;transition:opacity .2s var(--ease), transform .25s var(--ease);margin-top:-2px;position:absolute;top:50%;left:-12px;transform:translate(-4px)}.stack__item:hover{color:var(--text);transform:translate(8px)}.stack__item:hover:before{opacity:1;transform:none}@media (width<=900px){.stack{grid-template-columns:repeat(2,1fr)}.stack__group:nth-child(3){border-left:0;padding-left:0}.stack__group:nth-child(n+3){border-top:1px solid var(--line)}}@media (width<=480px){.stack{grid-template-columns:1fr}.stack__group+.stack__group{border-left:0;border-top:1px solid var(--line);padding-left:0}.stack__group{padding-bottom:1.25rem}.stack__item{margin-right:1.25rem;display:inline-block}}.timeline{--progress:0;padding-left:2rem;position:relative}.timeline:before,.timeline:after{content:"";background:var(--line-strong);width:1px;position:absolute;top:.5rem;bottom:0;left:0}.timeline:after{background:var(--accent);transform-origin:top;transform:scaleY(var(--progress));transition:transform .16s linear}.timeline__item{grid-template-columns:14rem 1fr;gap:2rem;padding-bottom:4rem;display:grid;position:relative}.timeline__item:last-child{padding-bottom:0}.timeline__item:before{content:"";background:var(--bg);border:1px solid var(--line-strong);z-index:1;width:7px;height:7px;transition:background-color .3s var(--ease), border-color .3s var(--ease);position:absolute;top:.45rem;left:calc(-2rem - 3px)}.timeline__item.is-visible:before,.timeline__item:hover:before{background:var(--accent);border-color:var(--accent)}.timeline__meta{flex-direction:column;gap:.35rem;display:flex}.timeline__period{color:var(--text-3);font-size:.78rem}.timeline__company{color:var(--text-2);font-size:.92rem}.timeline__body h3{font-size:1.35rem}.timeline__summary{color:var(--text-3);margin-top:.35rem}.timeline__points{gap:.6rem;margin-top:1.25rem;display:grid}.timeline__points li{color:var(--text-2);max-width:62ch;padding-left:1.1rem;position:relative}.timeline__points li:before{content:"";background:var(--text-3);width:5px;height:1px;position:absolute;top:.7em;left:0}.timeline__tags{flex-wrap:wrap;gap:.4rem;margin-top:1.5rem;display:flex}@media (width<=768px){.timeline{padding-left:1.5rem}.timeline__item{grid-template-columns:1fr;gap:.75rem;padding-bottom:3rem}.timeline__item:before{left:calc(-1.5rem - 3px)}}.proj__type{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);font-size:.72rem}.proj__stack{flex-wrap:wrap;gap:.4rem;display:flex}.proj__link{color:var(--accent);transition:border-color .2s var(--ease);border-bottom:1px solid #0000;align-items:center;gap:.3rem;font-size:.9rem;display:inline-flex}.proj__link:hover{border-bottom-color:currentColor}.proj__link svg{transition:transform .2s var(--ease)}.proj__link:hover svg{transform:translate(2px,-2px)}.featured{--mx:70%;--my:40%;--rx:0deg;--ry:0deg;border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--bg-elev);isolation:isolate;transition:border-color .3s var(--ease);grid-template-columns:1fr 1.15fr;align-items:center;gap:clamp(2rem,4vw,4rem);padding:clamp(1.75rem,4vw,3.5rem);display:grid;position:relative;overflow:hidden}.featured:hover{border-color:var(--line-strong)}.featured:before{content:"";z-index:-1;background:radial-gradient(420px circle at var(--mx) var(--my), #7cc4ff17, transparent 60%);opacity:0;transition:opacity .4s var(--ease);position:absolute;inset:0}.featured__grid{z-index:-1;opacity:0;-webkit-mask-image:radial-gradient(180px circle at var(--mx) var(--my), #000, transparent 70%);-webkit-mask-image:radial-gradient(180px circle at var(--mx) var(--my), #000, transparent 70%);mask-image:radial-gradient(180px circle at var(--mx) var(--my), #000, transparent 70%);transition:opacity .4s var(--ease);background-image:linear-gradient(#7cc4ff80 1px,#0000 1px),linear-gradient(90deg,#7cc4ff80 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0}.featured:hover:before{opacity:1}.featured:hover .featured__grid{opacity:.12}.featured__copy{flex-direction:column;align-items:flex-start;gap:1rem;display:flex}.featured__title{max-width:16ch;font-size:clamp(1.6rem,3vw,2.3rem)}.featured__desc{color:var(--text-2)}.featured__problem{border-left:1px solid var(--accent);color:var(--text-2);padding-left:1rem;font-size:.92rem}.featured__problem .mono,.card__problem .mono{text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin-bottom:.2rem;font-size:.7rem;display:block}.featured__copy .proj__link{margin-top:.5rem}.featured__preview{perspective:900px}.featured__copy,.featured__preview{min-width:0}.term{border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transform:rotateX(var(--rx)) rotateY(var(--ry));transition:transform .5s var(--ease);will-change:transform;background:#0b0b0e;overflow:hidden}.term__bar{border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:.65rem .85rem;display:flex}.term__bar span{background:var(--line-strong);border-radius:50%;width:8px;height:8px}.term__bar em{color:var(--text-3);font-size:.7rem;font-style:normal;font-family:var(--font-mono);margin-left:auto;margin-right:auto;transform:translate(-13px)}.term__body{color:var(--text-2);min-height:15rem;padding:1rem 1.1rem .5rem;font-size:.78rem;line-height:1.85}.term__body p{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.term__body b{color:var(--accent);font-weight:400}.term__body .dim{color:var(--text-3)}.term__extra{opacity:0;max-height:0;transition:max-height .3s var(--ease), opacity .3s var(--ease)}.featured:hover .term__extra,.featured:focus-within .term__extra{opacity:1;max-height:2em}.featured:hover .term__extra:nth-of-type(4){transition-delay:.3s}.featured:hover .term__extra:nth-of-type(5){transition-delay:.55s}.term__body .del{color:var(--text-3);text-decoration:line-through}.term__body .add{color:var(--accent)}.kbd{border:1px solid var(--line-strong);font:inherit;color:var(--text);border-bottom-width:2px;border-radius:4px;padding:0 .4em;font-size:.9em;line-height:1.5;display:inline-block}.term__cursor i{vertical-align:-2px;background:var(--text-2);width:7px;height:1em;display:inline-block}.featured:hover .term__cursor i{animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}.term__meter{border-top:1px solid var(--line);color:var(--text-3);align-items:center;gap:.75rem;padding:.75rem 1.1rem 1rem;font-size:.7rem;display:flex}.meter{gap:3px;display:flex}.meter i{background:var(--line);width:10px;height:10px;transition:background-color .12s step-end}.meter i.on{background:var(--accent)}.featured:hover .meter i.fill{background:var(--accent);transition-delay:.6s}.card:hover .art--bucket .meter i.on{background:var(--line);transition-delay:calc(var(--i) * 40ms + .1s)}.cards{grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:1.25rem;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--bg-elev);transition:border-color .3s var(--ease), transform .4s var(--ease);flex-direction:column;display:flex;overflow:hidden}.card:hover{border-color:var(--line-strong);transform:translateY(-3px)}.card__art{border-bottom:1px solid var(--line);background:linear-gradient(#ffffff04,#0000);place-items:center;height:190px;padding:1.5rem;display:grid}.card__body{flex-direction:column;flex:1;gap:.75rem;padding:1.75rem;display:flex}.card__title{font-size:1.4rem}.card__desc{color:var(--text-2)}.card__problem{transition:grid-template-rows .4s var(--ease);grid-template-rows:0fr;display:grid}.card__problem>div{overflow:hidden}.card__problem p{color:var(--text-2);padding-top:.25rem;font-size:.9rem}.card:hover .card__problem,.card:focus-within .card__problem{grid-template-rows:1fr}.card__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:auto;padding-top:.75rem;display:flex}.art--seq{width:100%;max-width:320px;font-family:var(--font-mono)}.art--seq text{fill:var(--text-3);font-size:9px}.art--seq .lbl{fill:var(--text-2);font-size:8px}.art--seq .life{stroke:var(--line-strong);stroke-dasharray:2 3}.art--seq .msg{stroke:var(--accent);stroke-width:1.25px;stroke-dasharray:100;stroke-dashoffset:0}.art--seq .msg.back{stroke:var(--text-2)}.card:hover .art--seq .msg{animation:drawMsg .9s var(--ease) both}.card:hover .art--seq .msg:nth-of-type(2){animation-delay:.15s}.card:hover .art--seq .msg:nth-of-type(3){animation-delay:.3s}.card:hover .art--seq .msg:nth-of-type(4){animation-delay:.45s}@keyframes drawMsg{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0}}.art--bucket{color:var(--text-3);justify-items:center;gap:.9rem;font-size:.7rem;display:grid}.art--bucket .meter{gap:5px}.art--bucket .meter i{width:16px;height:16px}.art__status{color:var(--text-2)}.art--grid{gap:8px;width:100%;max-width:320px;display:grid}.art__row{color:var(--text-3);grid-template-columns:2.5rem 1fr;align-items:center;font-size:.7rem;display:grid}.art__cells{grid-template-columns:repeat(10,1fr);gap:4px;display:grid}.art__cells i{aspect-ratio:1;background:var(--line)}.art__cells i.on{background:var(--accent);opacity:.85}.art__cells i.dead{background:var(--text-3)}.card:hover .art__cells i.on{animation:1.2s steps(2,end) infinite work;animation-delay:calc(var(--c) * 90ms + var(--r) * .14s)}@keyframes work{50%{opacity:.25}}.index__heading{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);margin-top:clamp(3.5rem,7vw,5rem);margin-bottom:1rem;font-size:.75rem;font-weight:400}.index{border-top:1px solid var(--line)}.index__row{border-bottom:1px solid var(--line)}.index__link{border-radius:var(--radius-md);transition:background-color .25s var(--ease);grid-template-columns:2.5rem 1.4fr 1fr 1.2fr 1.25rem;align-items:center;column-gap:1rem;margin:0 -.75rem;padding:1.15rem .75rem;display:grid}.index__link:hover,.index__link:focus-visible{background:#ffffff06}.index__num{color:var(--text-3);font-size:.75rem}.index__title{font-family:var(--font-display);letter-spacing:-.02em;transition:color .2s var(--ease);font-size:1.1rem;font-weight:500}.index__type{color:var(--text-3);font-size:.88rem}.index__stack{color:var(--text-3);font-size:.75rem}.index__arrow{color:var(--text-3);transition:transform .25s var(--ease), color .25s var(--ease)}.index__link:hover .index__title,.index__link:hover .index__arrow{color:var(--accent)}.index__link:hover .index__arrow{transform:translate(2px,-2px)}.index__desc{transition:grid-template-rows .35s var(--ease);grid-column:2/-1;grid-template-rows:0fr;display:grid}.index__desc>span{color:var(--text-2);font-size:.9rem;overflow:hidden}.index__link:hover .index__desc,.index__link:focus-visible .index__desc{grid-template-rows:1fr}.index__link:hover .index__desc>span,.index__link:focus-visible .index__desc>span{padding-top:.4rem}@media (width<=960px){.featured{grid-template-columns:1fr}.index__link{grid-template-columns:2.5rem 1fr 1.25rem}.index__type{display:none}.index__stack{grid-area:2/2;margin-top:.25rem}.index__arrow{grid-area:1/3}.index__desc{grid-area:3/2/auto/-1}}@media (width<=768px){.cards{grid-template-columns:1fr}.card__art{height:160px}}@media (hover:none){.card__problem,.index__desc{grid-template-rows:1fr}.index__desc>span{padding-top:.4rem}.term__extra{opacity:1;max-height:2em}.featured .meter i.fill{background:var(--accent)}}@media (width<=480px){.term__body{min-height:0;font-size:.7rem}.card__body,.featured{padding:1.35rem}}.oss{grid-template-columns:1fr 2fr;gap:2rem;display:grid}.oss__head{flex-direction:column;align-items:flex-start;gap:1rem;display:flex}.oss__title{font-size:clamp(1.5rem,2.6vw,1.9rem)}.oss__list{background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);grid-template-columns:1fr 1fr;gap:1px;display:grid;overflow:hidden}.oss__list li{background:var(--bg)}.oss__repo{height:100%;transition:background-color .25s var(--ease);flex-direction:column;gap:.5rem;padding:1.25rem 1.35rem;display:flex}.oss__repo:hover{background:var(--bg-elev)}.oss__name{color:var(--text);transition:color .2s var(--ease);font-size:.88rem}.oss__repo:hover .oss__name{color:var(--accent)}.oss__owner{color:var(--text-3)}.oss__note{color:var(--text-2);font-size:.88rem}.oss__lang{color:var(--text-3);align-items:center;gap:.45rem;margin-top:auto;padding-top:.5rem;font-size:.72rem;display:flex}.oss__lang i{background:var(--text-3);width:8px;height:8px}.oss__lang i[data-lang=Rust]{background:var(--accent)}@media (width<=860px){.oss{grid-template-columns:1fr}}@media (width<=520px){.oss__list{grid-template-columns:1fr}}.contact{padding-bottom:clamp(5rem,9vw,7rem)}.contact__inner{grid-template-columns:1.3fr 1fr;align-items:end;gap:clamp(3rem,7vw,6rem);display:grid}.contact__title{letter-spacing:-.045em;margin-top:1.25rem;font-size:clamp(2.6rem,7vw,5.2rem);line-height:1.02}.contact__title .accent{display:block}.contact__note{max-width:44ch;color:var(--text-2);margin-top:1.75rem}.contact__links{border-top:1px solid var(--line);margin-top:2.5rem}.contact__links li{border-bottom:1px solid var(--line);align-items:center;display:flex}.contact__link{color:var(--text);transition:color .2s var(--ease), padding-left .3s var(--ease);overflow-wrap:anywhere;flex:1;align-items:center;gap:.5rem;min-width:0;padding:1rem 0;font-size:clamp(1rem,1.6vw,1.15rem);display:flex}.contact__link .mono{width:5.5rem;color:var(--text-3);flex-shrink:0;font-size:.72rem}.contact__link:hover{color:var(--accent);padding-left:.4rem}.contact__copy{width:40px;height:40px;color:var(--text-3);border-radius:var(--radius-md);transition:color .2s var(--ease), background-color .2s var(--ease);place-items:center;display:grid}.contact__copy:hover{color:var(--text);background:#ffffff0d}.contact__form{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--bg-elev);flex-direction:column;gap:1.5rem;padding:clamp(1.5rem,3vw,2.25rem);display:flex}.field{flex-direction:column;gap:.35rem;display:flex}.field label{font-family:var(--font-mono);color:var(--text-3);font-size:.72rem}.field input,.field textarea{width:100%;font:inherit;color:var(--text);border:0;border-bottom:1px solid var(--line-strong);resize:vertical;transition:border-color .2s var(--ease);background:0 0;border-radius:0;padding:.5rem 0;font-size:.95rem}.field input:focus,.field textarea:focus{border-bottom-color:var(--accent);outline:none}.field input:focus-visible,.field textarea:focus-visible{box-shadow:0 1px 0 0 var(--accent);outline:none}.contact__form .btn{align-self:flex-start}.contact__form .btn:disabled{opacity:.6;cursor:progress}@media (width<=860px){.contact__inner{grid-template-columns:1fr}.contact__form .btn{justify-content:center;align-self:stretch}}@media (width<=420px){.contact__link .mono{width:4.5rem}}.modal__overlay{z-index:1000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0009;justify-content:center;align-items:center;padding:1.5rem;animation:.2s modalFadeIn;display:flex;position:fixed;inset:0}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal__card{background:var(--color-bg-variant);border:1px solid var(--color-border-hover);border-radius:var(--radius-xl);text-align:center;flex-direction:column;align-items:center;gap:.75rem;width:100%;max-width:340px;padding:2.5rem 2rem;animation:.25s cubic-bezier(.4,0,.2,1) modalSlideUp;display:flex}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(14px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.modal__icon{border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:.25rem;font-size:1.6rem;display:flex}.modal__icon--success{color:#22c55e;background:#22c55e14;border:1px solid #22c55e2e}.modal__icon--error{color:#ef4444;background:#ef444414;border:1px solid #ef44442e}.modal__title{color:var(--color-white);letter-spacing:-.02em;font-size:1.05rem;font-weight:600}.modal__text{color:var(--color-secondary);margin-bottom:.25rem;font-size:.82rem;line-height:1.65}.modal__close{justify-content:center;width:100%;margin-top:.25rem}.footer{padding-bottom:1.5rem}.footer__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;display:flex}.footer__copy{color:var(--text-3);flex-wrap:wrap;align-items:baseline;gap:1.25rem;font-size:.85rem;display:flex}.footer__hint{letter-spacing:.1em;color:#ffffff29;transition:color .3s var(--ease);font-size:.68rem}.footer__hint:hover{color:var(--accent)}.footer__socials{gap:.15rem;margin-right:-10px;display:flex}.easter-egg:hover{color:var(--accent)}.konami{z-index:95;pointer-events:none;animation:konamiIn .3s var(--ease);align-content:center;place-items:center;gap:.75rem;display:grid;position:fixed;inset:0}.konami__label{font-family:var(--font-mono);letter-spacing:.08em;color:var(--accent);text-transform:uppercase;font-size:.72rem}@keyframes konamiIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}.walker{border-bottom:1px solid var(--line);height:28px;position:relative;overflow:hidden}.walker__sprite{width:24px;height:28px;image-rendering:pixelated;background-size:96px 28px;animation:.48s steps(4,end) infinite walkFrames,7s linear forwards walkAcross;position:absolute;bottom:0;left:0}@keyframes walkFrames{to{background-position:-96px 0}}@keyframes walkAcross{0%{left:-24px}to{left:100%}}.konami:before{content:"";z-index:-1;background:radial-gradient(closest-side,#09090beb,#09090b99 60%,#0000);width:420px;height:420px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-cyrillic-ext-wght-normal-okcGN4Nq.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-cyrillic-wght-normal-BS41q_Tv.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-greek-ext-wght-normal-DQgQPNk4.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-greek-wght-normal-sS1B39LI.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-vietnamese-wght-normal-TKKdAiBA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-latin-ext-wght-normal-B4u9PlvR.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-latin-wght-normal-DX-nOvPD.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{box-sizing:border-box;margin:0;padding:0}ul,ol{list-style:none}:root{--bg:#09090b;--bg-elev:#0f0f12;--bg-elev-2:#141418;--line:#ffffff12;--line-strong:#ffffff24;--text:#ededed;--text-2:#a1a1aa;--text-3:#8a8a93;--accent:#7cc4ff;--accent-strong:#a8d8ff;--accent-soft:#7cc4ff1f;--accent-ink:#04121f;--font-sans:"Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Inter Tight Variable", var(--font-sans);--font-mono:"JetBrains Mono Variable", ui-monospace, "SFMono-Regular", Menlo, monospace;--ease:cubic-bezier(.22, 1, .36, 1);--transition:all .24s var(--ease);--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--shadow-md:0 18px 40px -20px #000c;--maxw:1120px;--gutter:clamp(16px, 5vw, 40px);--nav-h:64px;--color-bg:var(--bg);--color-bg-variant:var(--bg-elev);--color-surface:var(--bg-elev-2);--color-border:var(--line);--color-border-hover:var(--line-strong);--color-white:var(--text);--color-secondary:var(--text-2);--color-muted:var(--text-3);--color-accent:var(--accent);--color-primary:var(--text);--color-primary-variant:#ffffff1a;--container-width-md:88%;--container-width-sm:92%}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 16px);background:var(--bg);overflow-x:clip}body{font-family:var(--font-sans);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:1rem;line-height:1.6;overflow-x:clip}body:before{content:"";z-index:100;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}body:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(60% 50% at 70% 0,#7cc4ff0f,#0000 70%);height:900px;position:absolute;top:0;left:0;right:0}::selection{background:var(--accent);color:var(--accent-ink)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:3px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}img,svg,canvas{max-width:100%;display:block}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-sm)}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text);font-weight:600;line-height:1.1}.container{width:100%;max-width:calc(var(--maxw) + var(--gutter) * 2);padding:0 var(--gutter);margin:0 auto}.skip-link{z-index:200;background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-md);padding:.6rem 1rem;font-weight:600;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.section{padding:clamp(5rem,11vw,9rem) 0;position:relative}.section+.section:before{content:"";width:min(var(--maxw), calc(100% - var(--gutter) * 2));background:var(--line);height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.section-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:.6rem;font-size:.75rem;display:flex}.section-label span{color:var(--accent)}.section-title{max-width:18ch;margin-top:1rem;margin-bottom:clamp(2.5rem,5vw,4rem);font-size:clamp(1.9rem,4vw,2.9rem)}.section-title em{color:var(--text-3);font-style:normal}.mono{font-family:var(--font-mono)}.accent{color:var(--accent)}.btn{border-radius:var(--radius-md);border:1px solid var(--line-strong);height:44px;color:var(--text);white-space:nowrap;transition:background-color .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease), transform .3s var(--ease), box-shadow .2s var(--ease);align-items:center;gap:.5rem;padding:0 1.25rem;font-size:.9rem;font-weight:500;display:inline-flex}.btn:hover{background:#ffffff08;border-color:#ffffff47}.btn svg{transition:transform .2s var(--ease)}.btn:hover svg{transform:translate(2px)}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.btn-primary:hover{background:var(--accent-strong);border-color:var(--accent-strong);box-shadow:0 8px 30px -10px #7cc4ff8c}.icon-link{border-radius:var(--radius-md);width:44px;height:44px;color:var(--text-2);transition:color .2s var(--ease), background-color .2s var(--ease);place-items:center;font-size:1.15rem;display:inline-grid}.icon-link:hover{color:var(--text);background:#ffffff0d}.tag{font-family:var(--font-mono);color:var(--text-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.2rem .55rem;font-size:.72rem;display:inline-block}.js [data-reveal]{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transition-delay:var(--d,0s);transform:translateY(14px)}.js [data-reveal].is-visible{opacity:1;transform:none}.powerup-glow:after{content:"";z-index:90;pointer-events:none;animation:glowPulse 1.6s var(--ease) forwards;position:fixed;inset:0;box-shadow:inset 0 0 160px #7cc4ff38}.powerup-shake main{animation:.32s steps(4,end) shake}@keyframes glowPulse{0%{opacity:0}40%{opacity:1}to{opacity:0}}@keyframes shake{0%{transform:translate(0)}25%{transform:translate(2px,-1px)}50%{transform:translate(-2px,1px)}75%{transform:translate(1px,2px)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js [data-reveal]{opacity:1;transform:none}.powerup-glow:after{opacity:.6;animation:none}}
