.js-fade{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}.js-fade.visible{opacity:1;transform:translateY(0)}.js-fade:nth-child(2){transition-delay:.1s}.js-fade:nth-child(3){transition-delay:.2s}.js-fade:nth-child(4){transition-delay:.3s}.js-fade:nth-child(5){transition-delay:.4s}@media (prefers-reduced-motion:reduce){.js-fade{opacity:1;transition:none;transform:none}}.about-section{background:0 0;padding:6rem 5%;position:relative;overflow:hidden}.about-section:before{content:none}.about-shell{z-index:1;max-width:76rem;margin:0 auto;position:relative}.about-layout{gap:1.25rem;display:grid}.about-copy-panel,.about-side-panel{background:linear-gradient(#ffffff0b,#0000 36%),linear-gradient(145deg,#3b82f614,#0000 42%),#0e1420b8;border:1px solid #93a7cd1f;border-radius:.8rem;position:relative;overflow:hidden;box-shadow:0 22px 70px #00000038}.about-copy-panel{padding:clamp(1.35rem,3vw,2.4rem)}.about-copy-panel__rail{pointer-events:none;border:1px solid #60a5fa1c;border-radius:.55rem;position:absolute;inset:1rem}.about-copy-panel__kicker{color:var(--color-accent-soft);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;gap:.65rem;margin-bottom:1.7rem;font-size:10px;display:flex;position:relative}.about-copy-panel__kicker span:last-child{color:var(--color-success-soft)}.about-copy-panel__body{gap:1rem;max-width:70ch;display:grid;position:relative}.about-copy-panel__body p{color:var(--color-muted-strong);font-size:clamp(15px,1.55vw,16px);line-height:1.85}.about-skills{grid-template-columns:repeat(auto-fit,minmax(min(100%,13.5rem),1fr));gap:.75rem;margin-top:2rem;display:grid;position:relative}.about-skill{background:linear-gradient(135deg,#3b82f60e,#0000 58%),#080c1270;border:1px solid #ffffff13;border-radius:.55rem;padding:.9rem}.about-skill__label{color:var(--color-accent-soft);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.65rem;font-size:10px;display:block}.about-skill__pills{flex-wrap:wrap;gap:.35rem;display:flex}.about-skill__pills span{color:var(--color-muted);font-family:var(--font-mono);background:#3b82f60e;border:1px solid #60a5fa24;border-radius:.25rem;padding:.22rem .48rem;font-size:10px;line-height:1.35}.about-side-panel{align-content:start;gap:1rem;padding:1rem;display:grid}.about-stats{gap:.75rem;display:grid}.about-stat{background:linear-gradient(90deg,#60a5fa13,#0000 60%),#080c127a;border:1px solid #60a5fa21;border-radius:.55rem;grid-template-columns:minmax(5.5rem,auto) minmax(0,1fr);align-items:center;gap:1rem;min-height:5.4rem;padding:1rem;display:grid}.about-stat__value{color:var(--color-text);font-family:var(--font-mono);font-size:clamp(2rem,5vw,2.85rem);font-weight:700;line-height:1}.about-stat__value span{color:var(--color-accent-soft);font-size:.62em}.about-stat p{color:var(--color-muted);font-size:13px;line-height:1.55}.about-terminal{font-family:var(--font-mono);background:#070b12e0;border:1px solid #34d39929;border-radius:.65rem;overflow:hidden}.about-terminal__bar{background:#141b28d1;border-bottom:1px solid #ffffff12;grid-template-columns:auto 1fr;align-items:center;gap:1rem;padding:.75rem .9rem;display:grid}.about-terminal__bar>span{color:var(--color-muted-soft);letter-spacing:.1em;text-align:center;text-transform:uppercase;font-size:10px}.about-terminal__dots{gap:.35rem;display:flex}.about-terminal__dots span{border-radius:999px;width:.55rem;height:.55rem}.about-terminal__dots span:first-child{background:#f871718c}.about-terminal__dots span:nth-child(2){background:#fcd34d8c}.about-terminal__dots span:nth-child(3){background:#34d399a6}.about-terminal__body{color:var(--color-muted);gap:.6rem;padding:1rem;font-size:12px;line-height:1.6;display:grid}.about-terminal__command{color:var(--color-success-soft);gap:.5rem;display:flex}.about-terminal__skills{color:var(--color-accent-soft);gap:.25rem;display:grid}.about-terminal__divider{background:#ffffff0f;height:1px}.about-terminal__status{align-items:center;gap:.55rem;display:flex}.about-terminal__status>span:first-child{background:var(--color-success-soft);border-radius:999px;flex:none;width:.42rem;height:.42rem;box-shadow:0 0 12px #34d39980}.about-terminal__status strong{color:var(--color-success-soft);font-weight:500}@media (width>=980px){.about-layout{grid-template-columns:minmax(0,1.35fr) minmax(22rem,.75fr);align-items:stretch}}.contact-section{padding:6rem 5%}.contact-layout{gap:3rem;max-width:72rem;margin:0 auto;display:grid}.contact-title{margin-bottom:1rem}.contact-title__accent{color:var(--color-accent-soft)}.contact-intro{margin-left:auto;margin-right:auto}.contact-items{grid-template-columns:1fr;gap:1rem;display:grid}.contact-item{background:var(--color-bg-2);text-align:left;border:1px solid #ffffff12;border-radius:.5rem;padding:1.25rem;text-decoration:none;transition:border-color .2s}.contact-item:hover{border-color:var(--color-accent)}.contact-item:focus-visible{border-color:var(--color-success)}.contact-item__label{color:var(--color-accent-soft);font-family:var(--font-mono);letter-spacing:.1em;margin-bottom:.375rem;font-size:10px;display:block}.contact-item__value{color:var(--color-muted);font-family:var(--font-mono);font-size:12px}.contact-item__value--break{word-break:break-all}.contact-form{background:linear-gradient(180deg, #ffffff0e, transparent 24%), linear-gradient(145deg, #3b82f614, transparent 42%), var(--color-bg-2);border:1px solid #ffffff14;border-radius:.5rem;padding:clamp(1.25rem,4vw,2rem);box-shadow:0 22px 70px #0003}.contact-form__header{border-bottom:1px solid #ffffff12;margin-bottom:1.5rem;padding-bottom:1.25rem}.contact-form__eyebrow{color:var(--color-success-soft);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.contact-honeypot{display:none}.contact-grid{gap:1.25rem;display:grid}.contact-field{text-align:left;flex-direction:column;gap:.55rem;display:flex}.contact-field span{color:var(--color-accent-soft);letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:11px}.contact-field input,.contact-field textarea{width:100%;color:var(--color-text);font:inherit;background:#080c12c7;border:1px solid #ffffff14;border-radius:.375rem;outline:none;padding:.85rem .95rem;transition:border-color .2s,background-color .2s,box-shadow .2s}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#5a6478bf}.contact-field textarea{resize:vertical}.contact-field input:focus,.contact-field textarea:focus{background:#080c12f2;border-color:#10b9818c;box-shadow:0 0 0 3px #10b98114}.contact-upload{cursor:pointer;text-align:left;background:#3b82f60e;border:1px dashed #3b82f657;border-radius:.5rem;align-items:center;gap:1rem;padding:1rem;transition:border-color .2s,background-color .2s;display:flex;position:relative}.contact-upload__icon{width:3rem;height:3rem;color:var(--color-success-soft);background:#10b98114;border:1px solid #10b98147;border-radius:.375rem;flex:none;place-items:center;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;display:grid}.contact-upload__body{min-width:0}.contact-upload__label{color:var(--color-accent-soft);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.contact-upload__hint{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:.5rem;font-size:13px;display:block;overflow:hidden}.contact-upload:hover{background:#10b9810e;border-color:#10b98173}.contact-upload input{cursor:pointer;opacity:0;position:absolute;inset:0}.contact-submit{text-align:center;justify-content:center;align-items:center;gap:.65rem;min-width:min(100%,15rem)}.contact-submit:disabled{cursor:not-allowed;opacity:.8}.contact-submit--success{background:var(--color-success)}.contact-submit--error{background:#ef4444}.contact-actions{flex-direction:column;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.contact-feedback{min-height:1.25rem;color:var(--color-muted);font-family:var(--font-mono);text-align:center;font-size:11px}.contact-feedback--success{color:var(--color-success-soft)}.contact-feedback--error{color:#fca5a5}.contact-submit__spinner{border:2px solid #ffffff57;border-top-color:var(--color-text);border-radius:9999px;width:1rem;height:1rem;animation:.75s linear infinite contact-spin}.contact-turnstile{align-items:center;min-height:4rem;display:grid}@media (width>=640px){.contact-grid,.contact-items{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-field--wide,.contact-turnstile{grid-column:span 2}}@media (width>=1024px){.contact-layout{grid-template-columns:.85fr 1.15fr;align-items:start}.contact-items{grid-template-columns:1fr}}@keyframes contact-spin{to{transform:rotate(360deg)}}.edu-section{--edu-accent:var(--color-success);--edu-accent-2:var(--color-success-soft);--edu-accent-dim:#10b9811a;--edu-bg:var(--color-bg);--edu-card-bg:#0e1420d1;--edu-card-bdr:#34d39929;--edu-card-hbdr:#34d3995c;--edu-text:var(--color-text);--edu-muted:var(--color-muted);--edu-hl-bg:#10b98113;--edu-hl-bdr:#34d39933;--edu-hl-c:var(--color-success-soft);--edu-corner:#34d39952;--edu-r:16px;background:0 0;padding:6rem 5%;position:relative;overflow:hidden}.edu-shell{z-index:1;max-width:1080px;margin:0 auto;position:relative}.edu-dotgrid{display:none}.edu-heading{text-align:center;margin-bottom:4rem}.edu-heading__tag{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--edu-accent);background:var(--edu-accent-dim);border:1px solid var(--edu-card-bdr);border-radius:999px;margin-bottom:.8rem;padding:.28em 1em;font-size:.68rem;font-weight:700;display:inline-block}.edu-heading__title{font-family:var(--font-mono);color:var(--edu-text);letter-spacing:-.02em;margin:0 0 .4rem;font-size:clamp(1.9rem,4vw,2.9rem);font-weight:700}.edu-heading__sub{color:var(--edu-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem}.edu-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,440px),1fr));gap:1.75rem;display:grid}.edu-card{background:var(--edu-card-bg);border:1px solid var(--edu-card-bdr);border-radius:var(--edu-r);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:default;opacity:0;transition:opacity .55s cubic-bezier(.22, 1, .36, 1) calc(var(--i,0) * .1s), transform .55s cubic-bezier(.22, 1, .36, 1) calc(var(--i,0) * .1s), border-color .25s, box-shadow .25s;padding:2rem 2rem 1.6rem;position:relative;overflow:hidden;transform:translateY(32px)scale(.97)}.edu-card--visible{opacity:1;transform:translateY(0)scale(1)}.edu-card:hover{border-color:var(--edu-card-hbdr);box-shadow:0 0 0 1px var(--edu-card-hbdr), 0 16px 56px #00000073, 0 0 60px #10b98112}.edu-card__year{color:#34d3990b;letter-spacing:-.04em;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:7rem;font-weight:900;line-height:1;transition:color .3s;position:absolute;bottom:-.4rem;right:1.4rem}.edu-card:hover .edu-card__year{color:#34d39913}.edu-corner{width:18px;height:18px;color:var(--edu-corner);opacity:0;transition:opacity .3s ease calc(var(--i,0) * .1s + .3s);pointer-events:none;position:absolute}.edu-card--visible .edu-corner{opacity:1}.edu-card:hover .edu-corner{color:#34d39994}.edu-corner--tl{top:10px;left:10px}.edu-corner--tr{top:10px;right:10px;transform:rotate(90deg)}.edu-corner--br{bottom:10px;right:10px;transform:rotate(180deg)}.edu-corner--bl{bottom:10px;left:10px;transform:rotate(270deg)}.edu-card__glow{pointer-events:none;opacity:0;background:radial-gradient(#10b98112,#0000 65%);border-radius:50%;width:80%;height:80%;transition:opacity .35s;position:absolute;top:-30%;left:-20%}.edu-card:hover .edu-card__glow{opacity:1}.edu-card__head{justify-content:space-between;align-items:center;margin-bottom:1.4rem;display:flex}.edu-card__dates{letter-spacing:.1em;text-transform:uppercase;color:var(--edu-accent);font-size:.72rem;font-weight:700}.edu-card__icon-wrap{border:1px solid var(--edu-card-bdr);background:var(--edu-accent-dim);border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:border-color .25s,background .25s,transform .25s;display:flex}.edu-card:hover .edu-card__icon-wrap{background:#10b98124;border-color:#34d39957;transform:rotate(-4deg)scale(1.08)}.edu-card__img{object-fit:contain;width:22px;height:22px}.edu-card__icon-text{color:var(--edu-accent);font-size:13px;font-weight:800;line-height:1}.edu-card__body{margin-bottom:1.1rem}.edu-card__degree{color:var(--edu-text);letter-spacing:-.01em;margin:0 0 .55rem;font-size:1.05rem;font-weight:700;line-height:1.35}.edu-card__institution{color:var(--edu-muted);align-items:center;gap:.55rem;margin:0 0 .85rem;font-size:.8rem;display:flex}.edu-card__inst-line{background:var(--edu-accent);opacity:.6;border-radius:2px;flex-shrink:0;width:20px;height:1.5px;transition:width .3s;display:inline-block}.edu-card:hover .edu-card__inst-line{opacity:1;width:30px}.edu-card__desc{color:var(--edu-muted);margin:0;font-size:.82rem;line-height:1.7}.edu-card__divider{background:linear-gradient(90deg, var(--edu-card-bdr), transparent);height:1px;margin-bottom:.9rem}.edu-card__highlights{flex-wrap:wrap;gap:.4rem;display:flex}.edu-highlight{letter-spacing:.05em;color:var(--edu-hl-c);background:var(--edu-hl-bg);border:1px solid var(--edu-hl-bdr);opacity:0;transition:opacity .3s ease calc(var(--i,0) * .1s + var(--hi,0) * 50ms + .4s), transform .3s ease calc(var(--i,0) * .1s + var(--hi,0) * 50ms + .4s), background .2s, border-color .2s;border-radius:6px;padding:.22em .75em;font-size:.67rem;font-weight:600;transform:translateY(6px)}.edu-card--visible .edu-highlight{opacity:1;transform:translateY(0)}.edu-highlight:hover{background:#10b98124;border-color:#34d39961}@media (width<=520px){.edu-section{padding:4rem 4%}.edu-card{padding:1.5rem 1.4rem 1.2rem}.edu-card__year{font-size:5.5rem}}.exp-section{--exp-accent:var(--color-accent);--exp-accent-2:var(--color-accent-soft);--exp-current:var(--color-success);--exp-rail:#3b82f62e;--exp-fill:var(--color-accent);--exp-card-bg:#0e1420c7;--exp-card-bdr:#60a5fa2e;--exp-card-hover:#60a5fa57;--exp-text:var(--color-text);--exp-muted:var(--color-muted);--exp-tag-bg:#3b82f614;--exp-tag-c:var(--color-accent-pale);--exp-radius:14px;--exp-dot-size:44px;background:0 0;padding:6rem 5%;position:relative;overflow:hidden}.exp-section:before{content:none}.exp-shell{z-index:1;max-width:1100px;margin:0 auto;position:relative}.exp-heading{text-align:center;margin-bottom:4rem}.exp-heading__tag{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--exp-accent);background:var(--exp-tag-bg);border:1px solid var(--exp-card-bdr);border-radius:999px;margin-bottom:.9rem;padding:.3em .9em;font-size:.7rem;font-weight:700;display:inline-block}.exp-heading__title{font-family:var(--font-mono);color:var(--exp-text);margin:0;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700}.exp-timeline{padding:1rem 0 2rem;position:relative}.exp-rail,.exp-rail__fill{pointer-events:none;border-radius:99px;width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.exp-rail{background:var(--exp-rail);z-index:0}.exp-rail__fill{background:linear-gradient(to bottom, var(--exp-accent), var(--exp-accent-2));transform-origin:top;transform:translateX(-50%) scaleY(var(--progress,0));z-index:1;transition:transform 80ms linear;box-shadow:0 0 12px 2px #3b82f66b}.exp-entry{grid-template-columns:1fr var(--exp-dot-size) 1fr;grid-template-rows:auto auto;align-items:start;column-gap:2rem;margin-bottom:3.5rem;display:grid;position:relative}.exp-dot{z-index:2;width:var(--exp-dot-size);height:var(--exp-dot-size);grid-area:1/2;justify-content:center;align-items:center;margin-top:.6rem;display:flex;position:relative}.exp-dot__ring{border:2px solid var(--exp-card-bdr);background:#0a0a14e6;border-radius:50%;transition:border-color .3s,box-shadow .3s,transform .3s;position:absolute;inset:0}.exp-dot__icon{z-index:1;width:18px;height:18px;color:var(--exp-muted);transition:color .3s;position:relative}.exp-dot__icon img{object-fit:contain;width:100%;height:100%}.exp-entry--active .exp-dot__ring{border-color:var(--exp-accent);transform:scale(1.1);box-shadow:0 0 0 4px #3b82f62e,0 0 18px #3b82f652}.exp-entry--active .exp-dot__icon{color:var(--exp-accent)}.exp-entry--current .exp-dot__ring{border-color:var(--exp-current);box-shadow:0 0 0 4px #10b98133,0 0 18px #10b9814d}.exp-entry--current .exp-dot__icon{color:var(--exp-current)}.exp-date{letter-spacing:.06em;color:var(--exp-muted);white-space:nowrap;grid-row:1;align-items:center;padding-top:.85rem;font-size:.72rem;font-weight:600;transition:color .3s;display:flex}.exp-entry--active .exp-date{color:var(--exp-accent)}.exp-entry--current .exp-date{color:var(--exp-current)}.exp-entry--left .exp-card{grid-area:1/1}.exp-entry--left .exp-date{grid-area:1/3;justify-content:flex-start;padding-left:.5rem}.exp-entry--right .exp-card{grid-area:1/3}.exp-entry--right .exp-date{grid-area:1/1;justify-content:flex-end;padding-right:.5rem}.exp-entry--left .exp-card{opacity:0;transform:translate(-28px)}.exp-entry--right .exp-card{opacity:0;transform:translate(28px)}.exp-entry--left .exp-date{opacity:0;transform:translate(16px)}.exp-entry--right .exp-date{opacity:0;transform:translate(-16px)}.exp-dot__ring{opacity:0;transform:scale(.5)}.exp-entry--visible .exp-card{opacity:1;transition:transform .55s cubic-bezier(.22, 1, .36, 1) var(--delay), opacity .45s ease var(--delay);transform:translate(0)}.exp-entry--visible .exp-date{opacity:1;transition:transform .45s cubic-bezier(.22, 1, .36, 1) calc(var(--delay) + 80ms), opacity .4s ease calc(var(--delay) + 80ms);transform:translate(0)}.exp-entry--visible .exp-dot__ring{opacity:1;transition:opacity .3s ease calc(var(--delay) + .12s), transform .4s cubic-bezier(.34, 1.56, .64, 1) calc(var(--delay) + .12s), border-color .3s, box-shadow .3s;transform:scale(1)}.exp-card{background:var(--exp-card-bg);border:1px solid var(--exp-card-bdr);border-radius:var(--exp-radius);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:default;padding:1.4rem 1.6rem;transition:border-color .3s,box-shadow .3s,transform .3s;position:relative;overflow:hidden}.exp-card:hover{border-color:var(--exp-card-hover);box-shadow:0 8px 40px #00000059, 0 0 0 1px var(--exp-card-hover);transform:translateY(-2px)}.exp-entry--active .exp-card{border-color:#60a5fa66;box-shadow:0 12px 48px #0006,0 0 0 1px #60a5fa47}.exp-entry--current .exp-card{border-color:#10b98159;box-shadow:0 8px 36px #10b9811f}.exp-card__glow{pointer-events:none;opacity:0;background:radial-gradient(#3b82f617,#0000 70%);border-radius:50%;width:60%;height:120%;transition:opacity .3s;position:absolute;top:-40%;left:-10%}.exp-card:hover .exp-card__glow,.exp-entry--active .exp-card__glow{opacity:1}.exp-entry--current .exp-card__glow{background:radial-gradient(#10b98114,#0000 70%)}.exp-card__header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.9rem;display:flex}.exp-card__title{color:var(--exp-text);margin:0 0 .2rem;font-size:1rem;font-weight:700;line-height:1.3}.exp-card__company{color:var(--exp-muted);flex-wrap:wrap;align-items:center;gap:.4rem;margin:0;font-size:.78rem;display:flex}.exp-card__sep{color:var(--exp-accent);opacity:.6}.exp-card__location{color:var(--exp-muted);font-style:italic}.exp-badge{letter-spacing:.1em;text-transform:uppercase;color:var(--exp-current);background:#10b9811f;border:1px solid #10b9814d;border-radius:999px;flex-shrink:0;padding:.2em .7em;font-size:.62rem;font-weight:800;animation:2.4s ease-in-out infinite pulse-badge}@keyframes pulse-badge{0%,to{box-shadow:0 0 #10b98100}50%{box-shadow:0 0 0 4px #10b98126}}.exp-card__bullets{flex-direction:column;gap:.45rem;margin:0 0 .9rem;padding:0;list-style:none;display:flex}.exp-card__bullets li{color:var(--exp-muted);opacity:0;transition:opacity .3s ease calc(var(--bi,0) * 60ms + .25s), transform .3s ease calc(var(--bi,0) * 60ms + .25s);padding-left:1.1rem;font-size:.82rem;line-height:1.55;position:relative;transform:translate(-6px)}.exp-entry--visible .exp-card__bullets li{opacity:1;transform:translate(0)}.exp-card__bullets li:before{content:"";background:var(--exp-accent);opacity:.55;border-radius:50%;width:5px;height:5px;position:absolute;top:.6em;left:0}.exp-card__stack{border-top:1px solid var(--exp-card-bdr);flex-wrap:wrap;gap:.4rem;padding-top:.8rem;display:flex}.exp-tag{letter-spacing:.04em;color:var(--exp-tag-c);background:var(--exp-tag-bg);border:1px solid #60a5fa33;border-radius:6px;padding:.22em .72em;font-size:.68rem;font-weight:600;transition:background .2s,color .2s,border-color .2s}.exp-tag:hover{color:var(--color-accent-pale);background:#3b82f629;border-color:#60a5fa61}@media (width<=700px){.exp-rail,.exp-rail__fill{left:22px}.exp-entry{grid-template-rows:auto auto;grid-template-columns:44px 1fr;column-gap:1rem}.exp-dot{grid-area:1/1}.exp-entry--left .exp-card,.exp-entry--right .exp-card{grid-area:1/2;transform:translate(20px)!important}.exp-entry--left .exp-date,.exp-entry--right .exp-date{grid-area:2/2;justify-content:flex-start!important;padding:.3rem 0 0!important;transform:none!important}.exp-entry--visible .exp-card{transform:translate(0)!important}}.site-footer{border-top:1px solid #ffffff12;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:2rem 5%;display:flex}.site-footer__copy{color:var(--color-muted);font-family:var(--font-mono);font-size:11px}.site-footer__links{align-items:center;gap:.75rem;display:flex}.site-footer__social{width:2.5rem;height:2.5rem;color:var(--color-link-muted);background:#ffffff08;border:1px solid #ffffff14;border-radius:9999px;place-items:center;transition:border-color .2s,background-color .2s,color .2s;display:grid}.site-footer__social:hover{color:var(--color-text);background:#60a5fa1a;border-color:#60a5fa66}.site-footer__icon{width:1rem;height:1rem}.site-footer__icon--github{width:1.05rem;height:1.05rem}.hero-section{flex-direction:column;justify-content:center;min-height:100vh;padding:7rem 5% 4rem;display:flex;position:relative;overflow:hidden}.hero-code-bg{width:52%;color:var(--color-accent);font-family:var(--font-mono);opacity:.04;pointer-events:none;white-space:pre;padding:2.5rem;font-size:13px;line-height:2;display:none;position:absolute;bottom:0;right:0}.hero-content{z-index:10;max-width:48rem;position:relative}.hero-label{color:var(--color-success);font-family:var(--font-mono);letter-spacing:.15em;align-items:center;gap:.625rem;margin-bottom:1.5rem;font-size:12px;display:flex}.hero-label span{background:var(--color-success);width:1.5rem;height:1px;display:inline-block}.hero-title{font-family:var(--font-mono);letter-spacing:-3px;margin-bottom:1rem;font-size:clamp(44px,7vw,80px);font-weight:700;line-height:1.03}.hero-title span{color:var(--color-accent-soft)}.hero-typewriter{min-height:30px;color:var(--color-muted);font-family:var(--font-mono);margin-bottom:2rem;font-size:clamp(15px,2vw,20px);font-weight:300}.hero-description{max-width:540px;color:var(--color-muted);margin-bottom:2.75rem;font-size:16px;line-height:1.75}.hero-actions{flex-wrap:wrap;gap:1rem;margin-bottom:3rem;display:flex}.hero-actions .btn-primary span{font-family:var(--font-mono)}.hero-actions .btn-secondary img{width:15px;height:15px}.hero-badges{grid-template-columns:repeat(2,minmax(0,20.5rem));gap:.75rem;max-width:min(100%,44rem);display:grid}.hero-badge{min-height:2rem;color:var(--color-muted);font-family:var(--font-mono);letter-spacing:.05em;text-align:center;text-overflow:ellipsis;white-space:nowrap;border:1px solid #ffffff12;border-radius:9999px;justify-content:center;align-items:center;padding:.375rem .75rem;font-size:11px;line-height:1.2;display:inline-flex;overflow:hidden}.hero-badge--availability{color:var(--color-success);border-color:#10b98166}.hero-character{isolation:isolate;z-index:1;aspect-ratio:785/1102;contain:layout paint style;pointer-events:none;width:clamp(18rem,44vw,38rem);position:absolute;top:50%;bottom:auto;right:max(-5.5rem,-7vw);transform:translateY(-43%)}.hero-character:before{z-index:0;content:"";filter:blur(6px);opacity:.28;mix-blend-mode:screen;background:url(/profile_character.webp) bottom/contain no-repeat;position:absolute;inset:-1.25rem;transform:scale(1.018)}.hero-character__glow{aspect-ratio:1;filter:blur(22px);opacity:.78;background:radial-gradient(circle,#10b98152,#0000 58%),radial-gradient(circle at 70% 30%,#3b82f647,#0000 62%);border-radius:9999px;width:64%;position:absolute;bottom:7%;right:9%}.hero-character__arm-blur{z-index:2;clip-path:polygon(0 56%,100% 56%,100% 100%,0 100%);filter:blur(9px);opacity:.5;mix-blend-mode:lighten;background:url(/profile_character.webp) bottom/contain no-repeat;position:absolute;inset:0;transform:scale(1.01);-webkit-mask-image:linear-gradient(#0000 22%,#000000eb 66%,#000 100%);mask-image:linear-gradient(#0000 22%,#000000eb 66%,#000 100%)}.hero-character__image{z-index:1;opacity:.96;filter:drop-shadow(0 30px 70px #00000075);mix-blend-mode:lighten;width:100%;height:auto;display:block;position:relative;-webkit-mask-image:radial-gradient(at 54%,#000 54%,#000000c7 73%,#0000 100%);mask-image:radial-gradient(at 54%,#000 54%,#000000c7 73%,#0000 100%)}@media (width<=767px){.hero-character{opacity:.3;width:min(26rem,82vw);right:-8.25rem;transform:translateY(-43%)}.hero-character__image{mix-blend-mode:screen}}@media (width<=640px){.hero-character{opacity:.26;width:23rem;right:-9.75rem}.hero-badges{grid-template-columns:minmax(0,1fr)}}@media (width>=1024px){.hero-code-bg{display:block}.hero-content{max-width:58rem}}@media (width>=1280px){.hero-content{max-width:48rem}}.grid-bg{pointer-events:none;background-image:linear-gradient(#3b82f60a 1px,#0000 1px),linear-gradient(90deg,#3b82f60a 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0}.typewriter-line{max-width:100%;color:var(--color-success);white-space:nowrap;display:inline-block;position:relative}.typewriter-line:after{color:var(--color-accent);content:"|";transform:translateX(calc(var(--typewriter-chars,0) * 1ch));will-change:transform;animation:1s step-end infinite blink;position:absolute;top:0;left:0}.typewriter-line__sizer{visibility:hidden;display:inline-block}.typewriter-line__text{max-width:100%;position:absolute;inset:0 auto auto 0;overflow:hidden}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@media (prefers-reduced-motion:reduce){.typewriter-line:after{animation:none}}.languages-section{padding:6rem 5%}.languages-shell{max-width:72rem;margin:0 auto;position:relative}.languages-row{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:1.25rem;display:grid}.language-card{background:linear-gradient(145deg, #3b82f617, transparent 42%), linear-gradient(180deg, #ffffff0e, #ffffff04), var(--color-bg-3);border:1px solid #ffffff14;border-radius:.5rem;padding:1.35rem;transition:border-color .2s,transform .2s,box-shadow .2s;animation:.55s both language-card-in;position:relative;overflow:hidden}.language-card:nth-child(2){animation-delay:60ms}.language-card:nth-child(3){animation-delay:.12s}.language-card:nth-child(4){animation-delay:.18s}.language-card:after{content:"";filter:blur(12px);background:#10b98114;border-radius:9999px;width:7rem;height:7rem;position:absolute;bottom:-2rem;right:-2rem}.language-card:hover{border-color:#3b82f659;transform:translateY(-3px);box-shadow:0 18px 44px #00000038}.language-flag{background:#080c12ad;border:1px solid #ffffff21;border-radius:9999px;place-items:center;width:3.15rem;height:3.15rem;display:grid;overflow:hidden;box-shadow:0 10px 28px #00000038}.language-card__head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.language-flag__img{object-fit:cover;width:100%;height:100%}.language-level{font-family:var(--font-mono);letter-spacing:.025em;border:1px solid;border-radius:.125rem;padding:.25rem .625rem;font-size:10px;display:inline-block}.language-level--advanced{color:var(--color-accent-soft);border-color:#3b82f64d}.language-level--basic{color:var(--color-accent-pale);border-color:#60a5fa40}.language-level--native{color:var(--color-success-soft);border-color:#10b9814d}.language-name{color:var(--color-text);font-family:var(--font-mono);margin-bottom:.25rem;font-size:17px;font-weight:500}.language-desc{min-height:2rem;color:var(--color-muted);margin-bottom:1.25rem;font-size:12px;line-height:1.65}.language-progress{background:#ffffff12;border-radius:9999px;height:.35rem;overflow:hidden}.language-progress__bar{border-radius:inherit;background:linear-gradient(90deg, var(--color-accent), var(--color-success));transform-origin:0;width:100%;height:100%;transition:transform 1s cubic-bezier(.22,1,.36,1)}.language-percent{color:var(--color-muted);font-family:var(--font-mono);margin-top:.75rem;font-size:10px}@keyframes language-card-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.site-nav{z-index:50;justify-content:space-between;align-items:center;height:4rem;padding:0 5%;transition:background-color .3s,border-color .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s;display:flex;position:fixed;top:0;left:0;right:0}.site-nav--scrolled{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#080c12d9;border-bottom:1px solid #ffffff12}.site-nav__brand{color:var(--color-text);font-family:var(--font-mono);letter-spacing:-.01em;border-radius:.25rem;font-size:18px;font-weight:700}.site-nav__brand span{color:var(--color-accent-soft)}.site-nav__links{gap:2rem;list-style:none;display:none}.nav-link{color:var(--color-muted);letter-spacing:.05em;font-family:JetBrains Mono,monospace;font-size:13px;text-decoration:none;transition:color .2s;position:relative}.nav-link:hover{color:var(--color-text)}.nav-link:after{background:var(--color-accent);content:"";height:1px;transition:right .3s,left .3s;position:absolute;bottom:-2px;left:50%;right:50%}.nav-link:hover:after,.nav-link:focus-visible:after{left:0;right:0}.site-nav__github,.site-nav__mobile-github{color:var(--color-muted);font-family:var(--font-mono);border:1px solid #ffffff12;border-radius:.25rem;align-items:center;gap:.5rem;font-size:12px;transition:border-color .2s,color .2s}.site-nav__github{padding:.375rem .875rem;display:none}.site-nav__mobile-github{margin-top:1rem;padding:.5rem .875rem;display:inline-flex}.site-nav__github:hover,.site-nav__mobile-github:hover{border-color:var(--color-accent);color:var(--color-accent-soft)}.site-nav__github img,.site-nav__mobile-github img{width:1rem;height:1rem}.site-nav__toggle{width:2.5rem;height:2.5rem;color:var(--color-text);border:1px solid #ffffff12;border-radius:.25rem;justify-content:center;align-items:center;transition:border-color .2s,color .2s;display:inline-flex}.site-nav__toggle:hover{border-color:var(--color-accent);color:var(--color-accent-soft)}.site-nav__toggle-bars{flex-direction:column;gap:.375rem;display:flex}.site-nav__toggle-bars span{background:currentColor;width:1.25rem;height:.125rem;transition:opacity .2s,transform .2s;display:block}.site-nav__toggle-bars--open span:first-child{transform:translateY(.5rem)rotate(45deg)}.site-nav__toggle-bars--open span:nth-child(2){opacity:0}.site-nav__toggle-bars--open span:last-child{transform:translateY(-.5rem)rotate(-45deg)}.site-nav__mobile{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#080c12f2;border-block:1px solid #ffffff12;padding:1.25rem 5%;display:none;position:absolute;top:4rem;left:0;right:0}.site-nav__mobile--open{display:block}.site-nav__mobile-links{flex-direction:column;gap:1rem;list-style:none;display:flex}.nav-link--mobile{border-radius:.25rem;align-items:center;min-height:2.5rem;display:inline-flex}.skip-link{z-index:10000;background:var(--color-bg);color:var(--color-text-strong);border:1px solid #34d39973;border-radius:.25rem;padding:.75rem 1rem;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700;transition:transform .2s;position:fixed;top:.75rem;left:5%;transform:translateY(-150%)}.skip-link:focus-visible{transform:translateY(0)}@media (width>=640px){.site-nav__github{display:inline-flex}}@media (width>=768px){.site-nav__links{display:flex}.site-nav__toggle,.site-nav__mobile{display:none}}.skill-logo-fallback{color:var(--skill-color,var(--color-accent-soft));font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.projects-section{padding:6rem 5%}.projects-shell{max-width:80rem;margin:0 auto}.projects-grid{gap:1.25rem;display:grid}.project-card{background:linear-gradient(180deg, #ffffff09, transparent 28%), linear-gradient(135deg, #3b82f617, transparent 42%), var(--color-bg-3);border:1px solid #ffffff12;border-radius:.5rem;padding:2.5rem;transition:border-color .2s,transform .2s,box-shadow .2s;position:relative;overflow:hidden}.project-card--interactive{cursor:pointer;text-align:left;width:100%}.project-card__number{color:#ffffff08;pointer-events:none;-webkit-user-select:none;user-select:none;font-family:JetBrains Mono,monospace;font-size:72px;font-weight:700;line-height:1;display:none;position:absolute;top:1.5rem;right:1.75rem}.project-card__arrow{z-index:12;width:2.5rem;height:2.5rem;color:var(--color-link-muted);pointer-events:none;background:#ffffff0a;border:1px solid #ffffff14;border-radius:999px;place-items:center;transition:transform .2s,border-color .2s,color .2s,background-color .2s;display:grid;position:absolute;top:1.55rem;right:1.55rem}.project-card__arrow img{width:1rem;height:1rem}.project-card__content{z-index:10;gap:1rem;min-height:100%;display:grid;position:relative}.project-card__header{min-height:5.2rem;padding-top:1.65rem;padding-bottom:.1rem;position:relative}.project-card__context{color:var(--color-success-soft);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;font-family:JetBrains Mono,monospace;font-size:11px;line-height:1.2;position:absolute;top:0;left:0;right:0;overflow:hidden}.project-card__title{color:var(--color-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:18ch;min-height:3.45rem;font-size:24px;font-weight:500;line-height:1.2;display:-webkit-box;overflow:hidden}.project-card__summary{max-width:62ch;color:var(--color-muted);-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:14px;line-height:1.9;display:-webkit-box;overflow:hidden}.project-card:hover .project-card__arrow{color:var(--color-accent-pale);background:#3b82f61f;border-color:#60a5fa59;transform:translate(2px,-2px)}.project-card__glow{opacity:.8;pointer-events:none;background:radial-gradient(circle at 100% 0,#3b82f62e,#0000 30%),radial-gradient(circle at 0 100%,#10b98129,#0000 28%);position:absolute;inset:-10%}.project-card__footer{border-top:1px solid #ffffff0f;align-items:start;gap:.9rem;margin-top:auto;padding-top:.95rem;display:grid}.project-card__details{color:var(--color-muted);gap:.65rem;min-height:6.1rem;font-size:13px;line-height:1.82;display:grid}.project-card__details p{padding-left:1rem;position:relative}.project-card__details p:before{color:var(--color-accent-soft);content:"";background:currentColor;border-radius:999px;width:.35rem;height:.35rem;position:absolute;top:.75em;left:0}.project-card__stack{flex-wrap:wrap;gap:.375rem;margin-bottom:1.4rem;display:flex}.project-card__signals{flex-wrap:wrap;gap:.5rem;display:flex}.project-card__signalsBlock{padding:.15rem 0}.project-card{isolation:isolate;background:linear-gradient(180deg, #ffffff0d, transparent 30%), linear-gradient(140deg, #3b82f61c, transparent 43%), linear-gradient(320deg, #10b98112, transparent 40%), var(--color-bg-3);border-color:#93a7cd1f;border-radius:.75rem;min-height:100%;padding:clamp(1.35rem,2.4vw,2rem);transition:border-color .24s,transform .24s,box-shadow .24s,background-color .24s}.project-card:hover{border-color:#60a5fa5c;transform:translateY(-7px);box-shadow:0 28px 70px #0000004d,0 0 0 1px #60a5fa24}.project-card:focus-visible{border-color:#34d39994;box-shadow:0 0 0 3px #10b9811f,0 28px 70px #0000004d}.project-card__number{color:#60a5fa14;font-size:clamp(54px,7vw,86px);top:1rem;right:1.15rem}.project-card__arrow{width:2.35rem;height:2.35rem;color:var(--color-accent-soft);background:linear-gradient(135deg,#60a5fa29,#080c12b8),#080c12d1;border-color:#60a5fa33;border-radius:0 .55rem 0 .72rem;transition:transform .2s,border-color .2s,color .2s,background-color .2s,box-shadow .2s;top:.42rem;right:.42rem}.project-card__arrow:before,.project-card__arrow:after{content:"";pointer-events:none;position:absolute}.project-card__arrow:before{opacity:0;border-top:1px solid #60a5fa47;border-right:1px solid #60a5fa47;border-radius:0 .7rem 0 0;transition:opacity .2s,transform .2s;inset:-.42rem 0 0 -.42rem;transform:translate(-.2rem,.2rem)}.project-card__arrow:after{background:var(--color-success-soft);opacity:.72;border-radius:999px;width:.34rem;height:.34rem;bottom:.42rem;right:.42rem;box-shadow:0 0 12px #34d3996b}.project-card:hover .project-card__arrow{color:var(--color-accent-pale);background:linear-gradient(135deg,#60a5fa3d,#10b9811a),#080c12e0;border-color:#60a5fa80;transform:translate(.12rem,-.12rem);box-shadow:0 0 24px #3b82f62e}.project-card:hover .project-card__arrow:before{opacity:1;transform:translate(0)}.project-card:hover .project-card__arrow img{animation:.72s cubic-bezier(.22,1,.36,1) project-open-cue}.project-card__content{gap:1.05rem}.project-card__topline{grid-template-columns:2.4rem 1fr 2.4rem;align-items:center;gap:.5rem;padding-right:3.35rem;display:grid}.project-card__topline span{background:#60a5fa2e;height:1px}.project-card__topline span:nth-child(2){background:linear-gradient(90deg,#60a5fa52,#0000)}.project-card__topline span:nth-child(3){background:#34d39947}.project-card__header{min-height:6.2rem;padding-top:1.55rem;padding-right:2.8rem}.project-card__context{font-size:10px}.project-card__title{font-family:var(--font-mono);max-width:17ch;min-height:3.6rem;font-size:clamp(20px,2.4vw,26px);font-weight:650;line-height:1.14}.project-card__summaryBlock{min-height:7rem;padding:0}.project-card__summary{font-size:13.5px;line-height:1.82}.project-card__glow{opacity:.72}.project-card__spotlight{z-index:1;background:radial-gradient(18rem circle at var(--pointer-x,70%) var(--pointer-y,15%), #60a5fa2e, transparent 44%);opacity:0;pointer-events:none;transition:opacity .22s;position:absolute;inset:0}.project-card:hover .project-card__spotlight{opacity:1}.project-card__scan{z-index:2;opacity:.18;pointer-events:none;background-color:#0000;background-image:linear-gradient(90deg,#60a5fa12 1px,#0000 1px),linear-gradient(#60a5fa0e 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:34px 34px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 72%);mask-image:linear-gradient(#000,#0000 72%)}.project-card__stackPreview{flex-wrap:wrap;gap:.4rem;display:flex}.project-card__stackPreview span{color:var(--color-accent-pale);font-family:var(--font-mono);letter-spacing:.04em;background:#3b82f60f;border:1px solid #60a5fa29;border-radius:.32rem;padding:.28rem .58rem;font-size:10px}.project-card__footer{gap:1rem;padding-top:1rem}.project-card__details{min-height:5.5rem;font-size:12.5px;line-height:1.75}@keyframes project-open-cue{0%{transform:translate(0)}42%{transform:translate(.18rem,-.18rem)}to{transform:translate(0)}}@media (width<=640px){.project-card{padding:1.25rem}.project-card__topline{padding-right:2.6rem}.project-card__header{min-height:0;padding-right:2.3rem}.project-card__context{white-space:normal;margin-bottom:.75rem;display:block;position:static}.project-card__title{-webkit-line-clamp:unset;max-width:none;min-height:0;display:block;overflow:visible}.project-card__summaryBlock,.project-card__details{min-height:0}}.project-modal{z-index:80;place-items:center;padding:clamp(.75rem,2.4vw,1.75rem);display:grid;position:fixed;inset:0}.project-modal__backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:radial-gradient(circle at 20% 8%,oklch(58% .14 252/.18),#0000 30rem),linear-gradient(#04080ed1,#04080eeb);position:absolute;inset:0}.project-modal__panel{z-index:1;isolation:isolate;background:linear-gradient(90deg, #60a5fa14 1px, transparent 1px), linear-gradient(180deg, #60a5fa0f 1px, transparent 1px), radial-gradient(circle at top right, #10b9811f, transparent 22rem), linear-gradient(180deg, #ffffff0d, transparent 12rem), var(--color-bg-elevated);scrollbar-width:thin;scrollbar-color:#60a5fa6b #ffffff0a;background-size:46px 46px,46px 46px,auto,auto;border:1px solid #93a7cd29;border-radius:.9rem;width:min(100%,76rem);max-height:min(90vh,60rem);padding:clamp(1rem,2.5vw,1.5rem);position:relative;overflow:auto;box-shadow:0 34px 110px #0000006b,inset 0 1px #ffffff05}.project-modal__panel::-webkit-scrollbar{width:10px}.project-modal__panel::-webkit-scrollbar-track{background:#ffffff09;border-radius:999px}.project-modal__panel::-webkit-scrollbar-thumb{background:linear-gradient(#60a5fab8,#3b82f694) padding-box padding-box;border:2px solid #0000;border-radius:999px}.project-modal__panel::-webkit-scrollbar-thumb:hover{background:linear-gradient(#7db8ffe6,#3b82f6bd) padding-box padding-box}.project-modal__hero{background:linear-gradient(135deg,#3b82f61f,#0000 46%),linear-gradient(#ffffff0b,#ffffff03),#080c1280;border:1px solid #93a7cd1f;border-radius:.7rem;gap:clamp(1.25rem,3vw,2.5rem);padding:clamp(1rem,3vw,2rem);display:grid}.project-modal__hero-copy{max-width:52rem}.project-modal__kicker{flex-wrap:wrap;align-items:center;gap:.65rem;margin-bottom:1rem;display:flex}.project-modal__context{min-width:0;color:var(--color-success-soft);letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:11px;line-height:1.35;display:inline-flex}.project-modal__sequence,.project-modal__count{color:var(--color-accent-pale);letter-spacing:.1em;text-transform:uppercase;background:#3b82f613;border:1px solid #60a5fa33;border-radius:999px;align-items:center;padding:.4rem .7rem;font-family:JetBrains Mono,monospace;font-size:10px;line-height:1;display:inline-flex}.project-modal__title{color:var(--color-text);max-width:16ch;font-family:JetBrains Mono,monospace;font-size:clamp(26px,4.4vw,46px);font-weight:650;line-height:1.08}.project-modal__close{z-index:4;width:2.65rem;height:2.65rem;color:var(--color-text);background:#080c12b8;border:1px solid #93a7cd2e;border-radius:999px;place-items:center;transition:border-color .2s,background-color .2s,transform .2s;display:grid;position:absolute;top:clamp(1rem,2vw,1.35rem);right:clamp(1rem,2vw,1.35rem)}.project-modal__close img{width:1rem;height:1rem}.project-modal__close:hover{background:#3b82f61f;border-color:#60a5fa66;transform:rotate(90deg)}.project-modal__grid{gap:1rem;margin-top:1rem;display:grid}.project-modal__lead{max-width:68ch;color:var(--color-muted-strong);margin-top:1.15rem;font-size:clamp(15px,1.7vw,17px);line-height:1.85}.project-modal__main{gap:1rem;width:100%;display:grid}.project-modal__blueprint{background:radial-gradient(circle at 75% 20%,#10b98124,#0000 10rem),linear-gradient(90deg,#60a5fa1f 1px,#0000 1px) 0 0/28px 28px,linear-gradient(#60a5fa1a 1px,#0000 1px) 0 0/28px 28px,#05091094;border:1px solid #60a5fa2e;border-radius:.65rem;min-height:18rem;padding:1rem;position:relative;overflow:hidden}.project-modal__blueprint:before,.project-modal__blueprint:after{content:"";pointer-events:none;border:1px solid #60a5fa26;border-radius:.45rem;position:absolute;inset:1rem}.project-modal__blueprint:after{border-color:#10b9811f;inset:2.7rem 1.8rem 3.25rem}.project-modal__blueprint-top,.project-modal__blueprint-footer{z-index:1;color:var(--color-link-muted);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;gap:1rem;font-family:JetBrains Mono,monospace;font-size:10px;display:flex;position:relative}.project-modal__blueprint-top strong{color:var(--color-text);opacity:.2;font-size:clamp(34px,6vw,58px);font-weight:700;line-height:.9}.project-modal__blueprint-grid{z-index:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:2.8rem 0 2.4rem;display:grid;position:relative}.project-modal__blueprint-node{color:var(--color-accent-pale);text-overflow:ellipsis;white-space:nowrap;animation:.45s cubic-bezier(.22,1,.36,1) both blueprint-node-in;animation-delay:var(--node-delay);background:#080c12c7;border:1px solid #60a5fa33;border-radius:.35rem;padding:.65rem .7rem;font-family:JetBrains Mono,monospace;font-size:10px;line-height:1.25;overflow:hidden}.project-modal__globe{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;min-height:18rem;color:inherit;text-align:inherit;background:0 0;border:1px solid #60a5fa1f;border-radius:.65rem;place-items:center;display:grid;position:relative;overflow:hidden}.project-modal__globe:focus-visible{outline:2px solid var(--color-success);outline-offset:4px}.project-modal__globe--dragging{cursor:grabbing}.project-modal__globe--placeholder{cursor:default}.project-modal__globe-loader{aspect-ratio:1;opacity:.78;background:radial-gradient(circle,#34d3991a,#0000 58%),linear-gradient(90deg,#0000 0 46%,#60a5fa38 46% 54%,#0000 54%),linear-gradient(0deg,#0000 0 46%,#34d39929 46% 54%,#0000 54%);border:1px solid #60a5fa24;border-radius:9999px;width:min(58%,13rem)}.project-modal__globe:before,.project-modal__globe:after{content:"";pointer-events:none;position:absolute}.project-modal__globe:before{border:1px solid #60a5fa0f;border-radius:.45rem;inset:1rem}.project-modal__globe:after{border:1px solid #34d3990a;border-radius:.4rem;inset:2.1rem 1.55rem 2.75rem}.project-modal__globe-svg{z-index:1;aspect-ratio:1;width:min(100%,24rem);position:relative;overflow:visible}.project-modal__globe-node text,.project-modal__globe-meta{font-family:var(--font-mono);paint-order:stroke;stroke:#050910d9;stroke-width:3px}.project-modal__globe-node text{letter-spacing:.06em;text-transform:uppercase;font-size:8.5px}.project-modal__globe-meta{fill:#60a5fa80;letter-spacing:.12em;text-transform:uppercase;font-size:8px}.project-modal__section{background:linear-gradient(#ffffff09,#0000 34%),#080c125c;border:1px solid #93a7cd1f;border-radius:.7rem;padding:clamp(1rem,2.2vw,1.35rem);box-shadow:inset 0 1px #ffffff05}.project-modal__section--feature{padding:clamp(1rem,2.4vw,1.55rem)}.project-modal__section--related{background:linear-gradient(145deg,#10b9810e,#0000 44%),#080c125c}.project-modal__label{color:var(--color-accent-soft);letter-spacing:.14em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px;display:block}.project-modal__section-head{margin-bottom:1rem}.project-modal__section-head--split{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:.9rem;display:flex}.project-modal__section-copy{max-width:36rem;color:var(--color-muted-soft);margin-top:.55rem;font-size:13px;line-height:1.7}.project-modal__details{color:var(--color-muted);gap:.75rem;font-size:14px;line-height:1.85;display:grid}.project-modal__detail-item{background:linear-gradient(90deg,#3b82f60e,#0000 48%),#ffffff05;border:1px solid #93a7cd1a;border-radius:.55rem;grid-template-columns:2.25rem minmax(0,1fr);align-items:start;gap:1rem;padding:1rem;display:grid}.project-modal__detail-index{width:2.25rem;height:2.25rem;color:var(--color-accent-soft);letter-spacing:.14em;text-transform:uppercase;background:#3b82f613;border:1px solid #60a5fa33;border-radius:.4rem;place-items:center;font-family:JetBrains Mono,monospace;font-size:10px;display:grid}.project-modal__related,.project-modal__related-skeleton{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:.75rem;display:grid}.project-modal__related-skeleton span{background:linear-gradient(90deg,#ffffff06,#60a5fa0a);border:1px solid #93a7cd14;border-radius:.55rem;min-height:5.25rem}.project-modal__related-card{background:linear-gradient(135deg, color-mix(in srgb, var(--skill-color) 12%, transparent), transparent 55%), #ffffff06;border:1px solid #93a7cd1a;border-radius:.55rem;grid-template-columns:3rem minmax(0,1fr);align-items:center;gap:.75rem;min-height:5.25rem;padding:1rem;transition:border-color .2s,transform .2s,background-color .2s;display:grid}.project-modal__related-card:hover{border-color:color-mix(in srgb, var(--skill-color) 44%, #93a7cd24);background-color:#ffffff0a;transform:translateY(-3px)}.project-modal__related-logo{border:1px solid color-mix(in srgb, var(--skill-color) 35%, #ffffff14);background:#080c12b8;border-radius:.5rem;place-items:center;width:3rem;height:3rem;display:grid}.project-modal__related-logo img{object-fit:contain;width:1.7rem;height:1.7rem}.project-modal__related-fallback{color:var(--skill-color);letter-spacing:.08em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:.78rem}.project-modal__related-name{color:var(--color-text);font-size:15px;font-weight:500;line-height:1.35}.project-modal__related-meta{color:var(--color-muted);letter-spacing:.1em;text-transform:uppercase;margin-top:.25rem;font-family:JetBrains Mono,monospace;font-size:10px}.project-modal__signals{flex-wrap:wrap;gap:.55rem;margin-top:1.35rem;display:flex}.impact-badge--modal{background:#10b9810e}@keyframes blueprint-node-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width>=900px){.project-card{padding-right:7.5rem}.project-card__number{display:block}.project-card__footer{grid-template-columns:minmax(0,1fr) auto}.project-modal__hero{grid-template-columns:minmax(0,1fr) minmax(20rem,25rem);align-items:stretch}.project-modal__grid{grid-template-columns:minmax(0,1fr);align-items:start}}@media (width>=1280px){.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=640px){.project-modal__panel{border-radius:.65rem;max-height:92vh}.project-modal__hero{padding-top:3.8rem}.project-modal__blueprint{min-height:15rem}.project-modal__blueprint-grid{grid-template-columns:1fr;margin:2rem 0 1.8rem}.project-modal__detail-item{grid-template-columns:1fr}}.impact-badge{color:var(--color-success-soft);text-align:center;white-space:nowrap;border:1px solid #10b9814d;border-radius:.125rem;padding:.375rem .75rem;font-family:JetBrains Mono,monospace;font-size:10px;line-height:1.375}.skills-section{padding:6rem 5%}.skills-ambient{opacity:.7;background-image:linear-gradient(#10b98112 1px,#0000 1px),linear-gradient(90deg,#3b82f60f 1px,#0000 1px);background-size:92px 92px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 18% 82%,#0000);mask-image:linear-gradient(#0000,#000 18% 82%,#0000)}.skills-shell{z-index:10;max-width:80rem;margin:0 auto;position:relative}.skills-metrics{background:color-mix(in srgb, var(--color-bg-2) 80%, transparent);border:1px solid #ffffff12;border-radius:.5rem;grid-template-columns:repeat(3,minmax(0,1fr));max-width:36rem;margin:2rem auto 0;display:grid;overflow:hidden}.skills-metric{border-right:1px solid #ffffff12;padding:1.25rem}.skills-metric:last-child{border-right:0}.skills-metric__value{color:var(--color-text);font-family:var(--font-mono);font-size:26px;display:block}.skills-metric__label{color:var(--color-muted);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;margin-top:.25rem;font-size:10px;display:block}.skills-groups{gap:1.25rem;display:grid}.skill-group{background:linear-gradient(180deg, #ffffff08, transparent 38%), linear-gradient(140deg, #3b82f614, transparent 34%), var(--color-bg-2);border:1px solid #ffffff14;border-radius:.75rem;padding:1.25rem;overflow:hidden;box-shadow:0 18px 50px #0000002e}.skill-group__header{align-items:start;gap:1rem;display:grid}.skill-group__eyebrow{color:var(--color-accent-soft);letter-spacing:.14em;text-transform:uppercase;gap:.75rem;margin-bottom:.65rem;font-family:JetBrains Mono,monospace;font-size:10px;display:inline-flex}.skill-group__title{color:var(--color-text);font-family:JetBrains Mono,monospace;font-size:clamp(18px,2vw,22px);line-height:1.2}.skill-group__description{max-width:50rem;color:var(--color-muted);margin-top:.5rem;font-size:14px;line-height:1.7}.skill-group__meta{color:var(--color-text);letter-spacing:.12em;text-transform:uppercase;background:#ffffff08;border:1px solid #ffffff12;border-radius:999px;justify-self:start;align-items:center;padding:.45rem .8rem;font-family:JetBrains Mono,monospace;font-size:10px;display:inline-flex}.skill-marquee{cursor:grab;touch-action:pan-y;margin-top:1.25rem;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.skill-marquee:focus-visible{outline-offset:6px}.skill-marquee--dragging{cursor:grabbing}.skill-marquee__track{will-change:transform;gap:.9rem;width:max-content;display:flex}.skill-marquee__track--static{flex-wrap:wrap;width:100%;transform:none!important}.skill-marquee__track--loop{flex-wrap:nowrap}.skill-card{isolation:isolate;background:linear-gradient(135deg, #ffffff12, transparent 34%), var(--color-bg-4);border:1px solid #ffffff14;border-radius:.5rem;flex:0 0 min(17.5rem,100vw - 5.5rem);min-height:178px;padding:1rem;transition:border-color .2s,transform .2s,box-shadow .2s;position:relative;overflow:hidden}.skill-card:before{z-index:-1;background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--skill-color) 24%, transparent), transparent), linear-gradient(180deg, color-mix(in srgb, var(--skill-color) 12%, transparent), transparent 45%);opacity:0;content:"";transition:opacity .2s;position:absolute;inset:0}.skill-card:hover{border-color:color-mix(in srgb, var(--skill-color) 54%, #ffffff14);transform:translateY(-4px);box-shadow:0 16px 40px #00000038}.skill-card:hover:before{opacity:1}.skill-marquee--dragging .skill-card,.skill-marquee--dragging,.skill-marquee--dragging *{-webkit-user-select:none;user-select:none}.skill-card__scanline{background:linear-gradient(90deg, transparent, var(--skill-color), transparent);opacity:.45;height:1px;position:absolute;top:.75rem;left:.75rem;right:.75rem}.skill-card__logo{border:1px solid color-mix(in srgb, var(--skill-color) 38%, #ffffff14);background:#080c12bd;border-radius:.375rem;place-items:center;width:3.75rem;height:3.75rem;margin-bottom:1rem;display:grid}.skill-card__logo img{object-fit:contain;width:2.3rem;height:2.3rem}.skill-card__body{min-width:0}.skill-card__name{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:500;overflow:hidden}.skill-card__category{color:var(--color-muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin-top:.25rem;font-size:10px}.skill-card__progress{background:#ffffff0f;border-radius:999px;height:.375rem;margin-top:1.25rem;overflow:hidden}.skill-card__progress-bar{border-radius:inherit;background:var(--skill-color);height:100%}.skill-card__level{color:var(--skill-color);font-family:var(--font-mono);margin-top:.75rem;font-size:10px;display:block}@media (width>=960px){.skill-group__header{grid-template-columns:minmax(0,1fr) auto}.skill-group__meta{justify-self:end}}@media (prefers-reduced-motion:reduce){.skill-marquee{-webkit-mask-image:none;mask-image:none}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--color-blue-400:oklch(70.7% .165 254.624);--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--font-sans,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:root{--color-bg:#080c12;--color-bg-2:#0e1420;--color-bg-3:#141b28;--color-bg-4:#101722;--color-bg-5:#0a0e18;--color-bg-6:#0b111b;--color-bg-elevated:#0d131e;--color-text:#e8eaf0;--color-text-strong:#f0f4fb;--color-muted:#8e98ad;--color-muted-strong:#a7b0c1;--color-muted-soft:#6f7a91;--color-link-muted:#9fb2d7;--color-divider-muted:#3a4255;--color-accent:#3b82f6;--color-accent-strong:#1d4ed8;--color-accent-hover:#1e40af;--color-accent-deep:#2f6fe4;--color-accent-soft:#60a5fa;--color-accent-pale:#dbeafe;--color-success:#10b981;--color-success-soft:#34d399;--color-border:#ffffff12;--color-border-strong:#ffffff14;--font-sans:"DM Sans", sans-serif;--font-mono:"JetBrains Mono", monospace;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:.9rem;--radius-full:9999px;--shadow-card:0 18px 50px #0000002e;--shadow-card-hover:0 24px 54px #00000038;--shadow-modal:0 34px 110px #0000006b;--space-section-x:5%;--space-section-y:6rem}html{scroll-behavior:smooth}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);overflow-x:hidden}*{box-sizing:border-box}::selection{background:#3b82f64d}a{color:inherit;text-decoration:none}:focus{outline:none}:focus-visible{outline:2px solid var(--color-success);outline-offset:4px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}}@layer components{.tag{color:var(--color-accent-soft);letter-spacing:.12em;text-transform:uppercase;background:#3b82f614;border:1px solid #60a5fa38;border-radius:999px;align-items:center;gap:.5rem;margin-bottom:.8rem;padding:.32rem .85rem;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-flex}.tag:before{background:var(--color-success-soft);content:"";border-radius:999px;width:.38rem;height:.38rem;box-shadow:0 0 10px #34d39961}.section-title{letter-spacing:0;font-family:JetBrains Mono,monospace;font-size:clamp(28px,4vw,44px);font-weight:700;line-height:1.25}.section-shell{width:100%;max-width:78rem;margin:0 auto}.section-heading--centered{text-align:center}.section-heading--centered .tag{justify-content:center}.section-heading{margin-bottom:clamp(3rem,6vw,4rem)}.section-heading--split{gap:1.5rem;display:grid}.section-heading__copy{max-width:42rem;color:var(--color-muted);font-size:15px;line-height:1.75}.site-main{background:radial-gradient(circle at 12% 18%, #3b82f61f, transparent 22rem), radial-gradient(circle at 86% 78%, #10b9811a, transparent 24rem), var(--color-bg);position:relative;overflow:hidden}.site-main:before{content:"";pointer-events:none;background-image:linear-gradient(#60a5fa0b 1px,#0000 1px),linear-gradient(90deg,#34d39909 1px,#0000 1px);background-size:72px 72px;position:absolute;inset:0}.site-main>*{z-index:1;position:relative}.section-backdrop{background:0 0;position:relative;overflow:hidden}.section-backdrop:before{content:none}@media (width>=900px){.section-heading--split{grid-template-columns:minmax(0,.95fr) minmax(20rem,1fr);align-items:end}.section-heading--split .section-heading__copy{justify-self:end}}.pill{color:var(--color-muted);background:#ffffff0d;border:1px solid #ffffff12;border-radius:.125rem;padding:.25rem .625rem;font-family:JetBrains Mono,monospace;font-size:11px;transition:border-color .2s,color .2s;display:inline-flex}.pill:hover{color:var(--color-text);border-color:#3b82f680}.tl-tag{color:var(--color-accent-soft);letter-spacing:.025em;background:#3b82f61a;border:1px solid #3b82f633;border-radius:.125rem;padding:.125rem .5rem;font-family:JetBrains Mono,monospace;font-size:10px}.btn-primary{background:var(--color-accent-strong);color:var(--color-text-strong);letter-spacing:.025em;border-radius:.25rem;align-items:center;gap:.55rem;padding:.875rem 1.75rem;font-family:JetBrains Mono,monospace;font-size:13px;transition:background-color .2s,transform .2s;display:inline-flex}.btn-primary:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.btn-secondary{color:var(--color-text);letter-spacing:.025em;background:0 0;border:1px solid #ffffff12;border-radius:.25rem;align-items:center;gap:.55rem;padding:.875rem 1.75rem;font-family:JetBrains Mono,monospace;font-size:13px;transition:border-color .2s,color .2s,transform .2s;display:inline-flex}.btn-secondary:hover{border-color:var(--color-accent);color:var(--color-accent-soft);transform:translateY(-1px)}.stat-card{background:linear-gradient(135deg, #3b82f614, transparent 52%), var(--color-bg-3);border:1px solid #3b82f638;border-radius:.5rem;padding:1.5rem 1.75rem;transition:border-color .2s,background-color .2s}.stat-card:hover{border-color:#10b98166}section{scroll-margin-top:4rem}}@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.text-blue-400{color:var(--color-blue-400)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}#cursor{background:var(--accent);pointer-events:none;z-index:9999;border-radius:50%;width:10px;height:10px;transition:transform .15s,background .2s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}#cursor-ring{pointer-events:none;z-index:9998;border:1px solid #3b82f666;border-radius:50%;width:32px;height:32px;transition:transform .35s cubic-bezier(.2,.8,.4,1);position:fixed;top:0;left:0;transform:translate(-50%,-50%)}#scroll-progress{background:linear-gradient(90deg, var(--color-accent), var(--color-success));transform-origin:0;z-index:1000;will-change:transform;width:100%;height:2px;position:fixed;top:0;left:0;transform:scaleX(0)}@media (prefers-reduced-motion:reduce){#cursor,#cursor-ring{display:none}#scroll-progress{transition:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
