@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--font-hero:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-sans:var(--font-hero);--font-display:var(--font-hero);--font-mono:var(--font-hero)}body,#root,.portfolio-shell{font-family:var(--font-hero)}:root{--bg:#000;--bg-elevated:#000;--bg-card:#000;--bg-glass:#000;--text-h:#f5f5f5;--text:#e8e8e8;--text-soft:#a3a3a3;--muted:#6b6b6b;--border:#ffffff1a;--border-strong:#ffffff2e;--panel:#000;--accent:#708d81;--accent-rgb:112, 141, 129;--accent-muted:#708d8124;--accent-glow:#708d818c;--accent-dim:#8ba69c;--accent-deep:#4a5f57;--focus-ring:#708d818c;--selection:#708d8147;--shadow-deep:0 20px 48px #000000a6;--ease-cinematic:cubic-bezier(.16, 1, .3, 1);--ease-lando:cubic-bezier(.16, 1, .3, 1);--ease-snap:cubic-bezier(.22, 1, .36, 1);--container-inline:clamp(1.25rem, 4vw, 2.25rem);--section-content-max:60rem;--section-pad-y:clamp(2.5rem, 5vw, 3.5rem);--section-gap-y:clamp(3.25rem, 7.5vh, 4.75rem);--section-pad-top:clamp(3rem, 6.5vw, 4.5rem);--section-head-gap:clamp(1.5rem, 3.5vw, 2.25rem);--section-head-pad-y:clamp(.5rem, 1.5vw, 1rem);--section-title-offset:clamp(2.25rem, 5.5vw, 3.25rem);--section-sep-runner-loop:22s;--card-mid-gap:clamp(.6rem, 1.4vw, .75rem);--card-role-gap:clamp(.45rem, 1.1vw, .6rem);--credential-pad-y:clamp(.6rem, 1.4vw, .85rem);--credential-pad-x:clamp(.85rem, 2vw, 1.1rem);--credential-stack-gap:clamp(.5rem, 1.2vw, .7rem);--credential-row-gap:clamp(.38rem, .9vw, .48rem);--credential-meta-role-gap:var(--credential-row-gap);--credential-role-org-gap:var(--credential-row-gap);--credential-meta-slot-h:calc(var(--type-card-meta,.8125rem) * var(--type-line-meta,1.4));--credential-role-slot-h:calc(var(--type-card-role,1.0625rem) * var(--type-line-title,1.35) * 2);--credential-org-slot-h:calc(var(--type-card-org,.875rem) * var(--type-line-meta,1.4));--project-card-height:16.5rem;--project-card-edge-pad:clamp(.75rem, 2vw, 1rem);--project-card-top-pad:clamp(1rem, 2.5vw, 1.25rem);--project-card-title-kind-gap:.55rem;--project-card-kind-desc-gap:clamp(.75rem, 1.6vw, 1rem);--project-card-foot-gap:clamp(.4rem, 1vw, .6rem);--contact-cta-pad-y:1rem;--contact-cta-pad-x:2rem;--contact-cta-min-height:3.25rem;--footer-top-gap:clamp(3.25rem, 7vw, 4.75rem);--type-section:clamp(1.75rem, 3.75vw, 2.125rem);--type-card-title:1.0625rem;--type-card-role:var(--type-card-title);--type-body:1rem;--type-ui:.875rem;--type-card-meta:.8125rem;--type-card-org:var(--type-ui);--type-hero-tagline:clamp(1.125rem, 2.65vw, 1.3125rem);--type-line-body:1.65;--type-line-title:1.35;--type-line-role:1.28;--type-line-meta:1.4;--type-label-track:.07em;--hero-runway:100vh;--nav-reveal-scroll:80px;--scroll-offset:clamp(1.25rem, 3vh, 2rem);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (width<=640px){:root{--credential-row-gap:.72rem;--credential-stack-gap:.65rem;--project-card-height:20.25rem;--project-card-edge-pad:clamp(.75rem, 2vw, 1rem);--project-card-top-pad:clamp(1rem, 2.8vw, 1.2rem);--project-card-kind-desc-gap:clamp(.75rem, 1.6vw, 1rem);--project-card-foot-gap:clamp(.9rem, 2.6vw, 1.15rem)}}@media (width>=1100px){:root{--project-card-height:17.25rem}}.portfolio-shell--tech.portfolio-shell--minimal.portfolio-shell--lando{gap:var(--section-gap-y)}.portfolio-shell--tech.portfolio-shell--minimal.portfolio-shell--lando>header#home.hero{margin-bottom:0;padding-bottom:0}.portfolio-shell--minimal.portfolio-shell--lando .content-block,.portfolio-shell--minimal.portfolio-shell--lando .work-stream-block{padding:0 var(--container-inline);margin:0}.portfolio-shell--tech.portfolio-shell--minimal.portfolio-shell--lando{padding-bottom:clamp(.75rem,2vw,1.25rem)}.portfolio-shell--minimal.portfolio-shell--lando footer.content-block.site-footer{padding:0 var(--container-inline) clamp(.5rem, 1.5vw, .85rem);margin-top:0}.portfolio-shell--minimal .section-head{padding-top:var(--section-title-offset);margin-top:0}.portfolio-shell--minimal .content-block .tech-section__inner>:last-child,.portfolio-shell--minimal .work-stream-block .tech-section__inner>:last-child{margin-bottom:0}.portfolio-shell--minimal .about__accent-line{margin-top:clamp(1rem,2.5vw,1.5rem);margin-bottom:0}.portfolio-shell--minimal .min-contact__copy{margin-bottom:0}.portfolio-shell--minimal .contact-actions{margin-top:var(--section-head-gap)}.portfolio-shell--minimal .site-footer--compact{padding-top:var(--footer-top-gap)}.portfolio-shell--minimal .site-footer--compact .footer-strip{gap:.45rem;padding-top:clamp(1.5rem,3.5vw,2.35rem)}:root{--container-inline:clamp(1.125rem, 4vw, 2rem);--section-pad-y:clamp(2.75rem, 5.5vw, 4rem);--section-pad-top:clamp(3.5rem, 7vw, 5.25rem);--section-gap-y:clamp(4rem, 9vh, 5.75rem);--section-head-gap:clamp(1.75rem, 4vw, 2.5rem);--section-head-pad-y:clamp(.5rem, 1.5vw, 1rem);--section-title-offset:clamp(2.5rem, 6vw, 3.75rem);--card-role-gap:clamp(.5rem, 1.2vw, .65rem);--block-heading-gap:var(--section-head-gap);--ease-smooth:cubic-bezier(.22, 1, .36, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);font-family:var(--font-hero);font-size:16px;line-height:var(--type-line-body,1.65);letter-spacing:-.011em;font-feature-settings:"cv02", "cv03", "cv04", "cv11";color:var(--text-soft);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--shadow:0 20px 50px #00000080;--selection:#00996e33;font-weight:400}*,:before,:after{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:var(--scroll-offset);background:var(--bg)}.portfolio-shell--tech section.content-block[id],.portfolio-shell--tech header#home,.portfolio-shell--tech .hero-stage#about{scroll-margin-top:var(--scroll-offset)}.scroll-offset-probe{visibility:hidden;height:var(--scroll-offset);pointer-events:none;position:absolute;top:0;left:0}body{min-width:0;min-height:100vh;font-family:var(--font-hero);color:var(--text-soft);background-color:var(--bg);margin:0;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-hero);color:var(--text-h)}code,pre,.tech-meta{font-family:var(--font-hero)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}:focus:not(:focus-visible){outline:none}body,a,button,input,textarea{color:inherit;font-family:inherit}#root{min-height:100vh;position:relative}::selection{background:var(--selection);color:var(--text-h)}h1,h2,h3,h4,p{font-family:var(--font-hero);margin:0}h1{color:var(--text-h);letter-spacing:-.04em;text-wrap:balance;font-size:clamp(3rem,14vw,9rem);font-weight:600;line-height:1.05}h2{color:var(--text-h);letter-spacing:-.03em;text-wrap:balance;font-size:clamp(1.5rem,3.5vw,2.25rem);font-weight:600;line-height:1.1}h3{color:var(--text-h);letter-spacing:-.02em;font-size:1.05rem;font-weight:600}p{color:var(--text-soft);font-size:1rem;font-weight:400;line-height:1.7}.tech-meta{font-family:var(--font-hero);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:500}.tech-atmosphere{z-index:0;pointer-events:none;background:#000;position:fixed;inset:0;overflow:hidden}.tech-atmosphere--minimal{background:#000}html,body,#root,.portfolio-shell--tech{background-color:#000}.portfolio-shell--tech .tech-section__ambient{display:none}@media (prefers-reduced-motion:reduce){.tech-scroll-backdrop--static,.tech-scroll-backdrop--solid{opacity:1;background:#000}}.portfolio-shell--tech,.portfolio-shell--minimal{font-family:var(--font-hero);letter-spacing:-.011em;font-feature-settings:"cv02", "cv03", "cv04", "cv11";color:var(--text-soft)}.portfolio-shell--minimal{--section-gap:var(--section-gap-y)}.section-head-minimal{text-align:center;max-width:720px;margin-bottom:clamp(2rem,5vw,3rem);margin-left:auto;margin-right:auto}.section-head-minimal__title{font-family:var(--font-hero);letter-spacing:-.03em;color:var(--text-h);margin:0;font-size:clamp(1.5rem,3.5vw,2.25rem);font-weight:600}.section-head-minimal--skills{flex-direction:column;align-items:stretch;gap:1.5rem;max-width:100%}.section-head-minimal--skills .section-head-minimal__row{margin-bottom:0}.skill-tab-minimal{appearance:none;font-family:var(--font-hero);letter-spacing:-.01em;color:var(--muted);cursor:pointer;background:0 0;border:none;font-weight:500;transition:color .2s}.skill-tab-minimal.is-active,.skill-tab-minimal:hover{color:var(--text-h)}.skill-chip-minimal{border:1px solid var(--border);font-family:var(--font-hero);font-size:var(--type-ui,.875rem);letter-spacing:-.01em;color:var(--text-h);background:0 0;border-radius:4px;align-items:center;gap:.65rem;padding:.55rem 1.05rem .55rem .65rem;font-weight:500;transition:border-color .2s,background .2s;display:inline-flex}.skill-chip-minimal__icon{flex-shrink:0;justify-content:center;align-items:center;line-height:0;display:inline-flex}.skill-chip-minimal__icon svg{width:22px;height:22px;display:block}.skill-chip-minimal__label{line-height:1.2}.min-list{max-width:820px;margin:0 auto;padding:0;list-style:none}.min-list__item{border-bottom:1px solid var(--border);grid-template-columns:auto 1fr;gap:0 1.25rem;padding:clamp(1.35rem,3vw,1.75rem) 0;display:grid}.min-list__item:first-child{border-top:1px solid var(--border)}.min-list__index{font-family:var(--font-hero);font-variant-numeric:tabular-nums;letter-spacing:.06em;color:var(--muted);padding-top:.2rem;font-size:.75rem;font-weight:500}.min-list__marker{color:var(--muted);align-items:flex-start;padding-top:.15rem;display:flex}.min-list__body h3{font-family:var(--font-hero);letter-spacing:-.02em;color:var(--text-h);margin-bottom:.35rem;font-size:1.05rem;font-weight:600}.min-list__body p{font-family:var(--font-hero);font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.72);color:var(--text-soft)}.min-list__meta{margin-bottom:.35rem;display:block}.min-row--project{grid-template-columns:2.5rem 1.25rem 1fr;align-items:start;gap:0 1rem}.min-row--project .min-list__icon{color:var(--muted);padding-top:.1rem}.min-edu-list{max-width:720px;margin:0 auto}.min-edu-item{border-bottom:1px solid var(--border);padding:clamp(1.5rem,3vw,2rem) 0}.min-edu-item:first-child{border-top:1px solid var(--border)}.min-edu-item__date,.min-list__meta{margin-bottom:.5rem}.min-edu-item h3{font-family:var(--font-hero);color:var(--text-h);margin-bottom:.35rem;font-size:1.1rem;font-weight:600}.min-edu-item p{font-family:var(--font-hero);font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.72);color:var(--text-soft)}.min-contact{width:100%;max-width:var(--section-content-max);text-align:center;flex-direction:column;align-items:center;margin:0 auto;display:flex}.min-contact__copy{font-family:var(--font-hero);color:var(--text-soft);text-wrap:pretty;margin:0 0 1.75rem;font-size:1rem;line-height:1.75}.portfolio-shell--minimal .tech-section--footer .tech-section__ambient{display:none}.portfolio-shell--minimal .tech-section--footer .tech-section__inner{padding:0}.portfolio-shell--minimal .footer-content{width:100%;max-width:var(--section-content-max);margin:0 auto}.portfolio-shell--minimal .footer-strip{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;padding:.25rem 0 0;display:flex}.portfolio-shell--minimal .footer-signoff,.portfolio-shell--minimal .copyright{font-family:var(--font-hero);letter-spacing:-.03em;color:var(--text-h);text-transform:none;margin:0;font-weight:500}.portfolio-shell--minimal .footer-signoff{font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.72);margin-top:clamp(.5rem,1.5vw,1rem)}.portfolio-shell--minimal .copyright{font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.72);margin-top:.15rem}.portfolio-shell--minimal .footer-logo,.portfolio-shell--minimal .hero-frame:after,.portfolio-shell--lando .hero-frame:after{display:none}.portfolio-shell--minimal .hero-frame,.portfolio-shell--lando .hero-frame{border-color:#ffffff1f;animation:none;box-shadow:0 0 48px #00000073}.portfolio-shell--minimal .hero-frame__corner,.portfolio-shell--minimal .tech-section__corner,.portfolio-shell--lando .hero-frame__corner,.portfolio-shell--lando .tech-section__corner{display:none!important}.portfolio-shell--minimal .hero-frame{box-shadow:none;background:0 0;border:none;border-radius:0;padding:clamp(2rem,5vw,3rem) 0}@media (prefers-reduced-motion:no-preference){.portfolio-shell--minimal .hero-frame{animation:none}.portfolio-shell--minimal .hero-frame:after{display:none}}.portfolio-shell--minimal .hero-mega-line,.portfolio-shell--minimal .hero-mega-line--single{font-family:var(--font-hero);letter-spacing:-.04em;color:#fff;font-weight:600;animation:none}.portfolio-shell--minimal .hero-text{font-family:var(--font-hero);color:var(--text-soft)}.portfolio-shell--minimal .hero-cta{font-family:var(--font-hero)}.portfolio-shell--minimal .wordmark,.portfolio-shell--minimal .nav-links a{font-family:var(--font-hero);letter-spacing:-.02em;font-weight:600}.portfolio-shell--minimal .nav-links a{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.8125rem;font-weight:500}.portfolio-shell--minimal .nav-links a:hover{color:var(--text-h)}.portfolio-shell--minimal .hero-scroll-hint{font-family:var(--font-hero);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-size:.6875rem;font-weight:500}.portfolio-shell--minimal .hero-scroll-hint__line{background:linear-gradient(#ffffff80,#0000)}.portfolio-shell--minimal .section-divider,.portfolio-shell--minimal .project-watermark,.portfolio-shell--minimal .block-heading h2:after{display:none}.portfolio-shell--minimal .social-icon-circle{border:1px solid var(--border-strong);color:var(--text-h);background:0 0}.portfolio-shell--minimal .social-icon-circle:hover{background:#ffffff0f;border-color:#fff}.skill-tabs-rail{width:100%;max-width:var(--section-content-max);margin:0 auto var(--card-mid-gap,1rem);box-sizing:border-box;min-height:3.25rem;padding-bottom:1.1rem;position:relative}.skill-tabs-rail:after{content:"";background:var(--border);pointer-events:none;height:1px;position:absolute;bottom:0;left:0;right:0}.skill-tabs-minimal{z-index:1;border-bottom:none;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:.75rem 2rem;margin:0;padding:0;display:flex;position:relative}.skill-tab-minimal{font-size:var(--type-ui,.875rem);white-space:nowrap;align-items:center;gap:.5rem;padding:.35rem 0 0;display:inline-flex;position:relative}.skill-tab-minimal:after{content:"";background:var(--text-h);transform-origin:50%;height:2px;transition:transform .25s var(--ease-smooth,cubic-bezier(.4, 0, .2, 1));z-index:2;position:absolute;bottom:-1.1rem;left:0;right:0;transform:scaleX(0)}.skill-tab-minimal.is-active:after{transform:scaleX(1)}.portfolio-shell--minimal .skill-tab-minimal.is-active:after{background:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.skill-tab-minimal__glyph,.skill-group-icon{opacity:.92;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .25s,transform .25s,color .25s;display:inline-flex}.skill-group-icon--glyph{color:rgba(var(--accent-rgb), .72)}.skill-tab-minimal.is-active .skill-tab-minimal__glyph,.skill-tab-minimal:hover .skill-tab-minimal__glyph{opacity:1}.skill-tab-minimal.is-active .skill-group-icon--glyph,.skill-tab-minimal:hover .skill-group-icon--glyph{color:var(--accent)}.skills-panel{width:100%;max-width:var(--section-content-max);justify-content:center;align-items:flex-start;min-height:clamp(6.5rem,18vw,9rem);margin:0 auto;display:flex}.skills-flow{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:.85rem 1.15rem;width:100%;display:flex}.skill-chip-minimal{border:1px solid var(--border);background:rgba(var(--accent-rgb), .025);font-size:var(--type-ui,.875rem);letter-spacing:-.015em;color:var(--text-h);border-radius:0;flex:none;align-items:center;gap:.65rem;padding:.55rem 1.05rem .55rem .65rem;font-weight:500;transition:border-color .25s,background .25s;display:inline-flex}.skill-chip-minimal:hover{border-color:rgba(var(--accent-rgb), .28);background:rgba(var(--accent-rgb), .06)}.skill-chip-minimal__icon{background:#ffffff0a;border:none;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;line-height:0;display:inline-flex}.skill-icon{justify-content:center;align-items:center;line-height:0;display:inline-flex}.skill-icon svg{flex-shrink:0;width:22px;height:22px;display:block}.skill-chip-minimal__label{color:var(--text-soft);line-height:1.25}.skill-chip-minimal:hover .skill-chip-minimal__label{color:var(--text-h)}@media (width<=640px){.skill-tabs-minimal{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;padding-bottom:0;overflow:auto hidden}.skill-tabs-minimal::-webkit-scrollbar{display:none}.skill-tabs-rail{min-height:3rem}}:root{--ease-lando:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.45, .64, 1);--panel-pad:var(--container-inline)}.portfolio-shell--lando{--section-gap:var(--section-gap-y)}.portfolio-shell--lando .content-block{position:relative}.portfolio-shell--lando .content-block:not(.site-footer):before{content:"";border-top:1px solid var(--border);border-bottom:1px solid var(--border);pointer-events:none;opacity:.6;position:absolute;inset:0}.portfolio-shell--lando .content-block.site-footer:before,.portfolio-shell--lando footer.content-block.site-footer:before{display:none}.nav--lando{z-index:50;transition:backdrop-filter .5s var(--ease-lando), background .5s var(--ease-lando);margin-bottom:0;padding-top:clamp(14px,2.5vw,22px);padding-bottom:clamp(14px,2.5vw,22px);position:sticky;top:0}.hero--lando .hero-stage{min-height:min(88svh,900px)}.hero-ai-ribbon{letter-spacing:.28em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:.65rem 1rem;margin-bottom:clamp(1.25rem,3vw,2rem);font-size:clamp(.65rem,1.4vw,.78rem);font-weight:500;display:flex}.hero-ai-ribbon__sep{opacity:.45;font-size:.55rem}.hero--lando .hero-mega-line--single{letter-spacing:-.05em;white-space:nowrap;font-size:clamp(2.75rem,14vw,9.5rem);font-weight:600;line-height:1}.hero--lando .hero-text{max-width:36rem;font-size:clamp(.95rem,2vw,1.0625rem)}.hero--lando .hero-cta{transition:transform .45s var(--ease-lando), background .45s var(--ease-lando), border-color .45s var(--ease-lando), box-shadow .45s var(--ease-lando)}.hero--lando .hero-cta:hover{transform:translateY(-3px);box-shadow:0 0 32px #ffffff14}.lando-title-wrap{text-align:center;perspective:1200px;margin-bottom:clamp(2.5rem,6vw,4rem)}.lando-title{font-family:var(--font-hero);letter-spacing:-.04em;color:var(--text-h);text-transform:uppercase;will-change:transform, opacity;margin:0;font-size:clamp(2.25rem,11vw,5.5rem);font-weight:600;line-height:.95}.lando-title-line{transform-origin:50%;background:linear-gradient(90deg,#0000,#fff,#0000);width:min(280px,60%);height:1px;margin:clamp(1rem,2.5vw,1.5rem) auto 0}.lando-panel{border:1px solid var(--border);transition:border-color .5s var(--ease-lando), background .5s var(--ease-lando), transform .5s var(--ease-lando);background:#ffffff05;padding:clamp(1.25rem,3vw,1.75rem);position:relative}.lando-panel:before{content:"";opacity:0;height:1px;transition:opacity .5s var(--ease-lando);background:linear-gradient(90deg,#0000,#ffffff59,#0000);position:absolute;top:0;left:0;right:0}.lando-panel:hover{background:#ffffff0a;border-color:#ffffff47;transform:translateY(-2px)}.lando-panel:hover:before{opacity:1}.min-list__item.lando-panel{border-top:none;border-left:none;border-right:none}.min-list__item.lando-panel:last-child{border-bottom:1px solid var(--border)}.skills-flow--lando{gap:.85rem 1.15rem}.skill-chip-minimal{transition:transform .45s var(--ease-lando), border-color .45s var(--ease-lando), background .45s var(--ease-lando), box-shadow .45s var(--ease-lando)}.skill-chip-minimal:hover{box-shadow:none}.skill-tab-minimal{transition:color .4s var(--ease-lando)}.skill-tab-minimal:after{transition:transform .5s var(--ease-lando)}.ai-ticker{z-index:40;pointer-events:none;-webkit-backdrop-filter:blur(8px);background:#000000d9;border-top:1px solid #ffffff14;max-height:28px;position:fixed;bottom:0;left:0;right:0;overflow:hidden}.ai-ticker__track{width:max-content;font-family:var(--font-hero);letter-spacing:.22em;text-transform:uppercase;color:var(--muted);align-items:center;gap:3rem;padding:.5rem 0;font-weight:500;line-height:1;animation:42s linear infinite ai-ticker-scroll;display:flex;font-size:.65rem!important}.ai-ticker__track span{white-space:nowrap;font-size:inherit;line-height:1}@keyframes ai-ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.portfolio-shell--lando .min-contact__link:hover,.portfolio-shell--lando .min-contact__link:focus-visible{box-shadow:none;transform:none}.portfolio-shell--lando{padding-bottom:2.5rem}@media (width<=960px){.nav-links{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;justify-content:flex-start;gap:1.25rem;width:100%;padding-bottom:.35rem;overflow-x:auto}.nav-links::-webkit-scrollbar{display:none}.nav-links a{flex-shrink:0}.lando-title{font-size:clamp(2rem,14vw,3.5rem)}.min-row--project{grid-template-columns:2rem 1rem 1fr;gap:0 .75rem}}@media (width<=600px){.portfolio-shell--lando .content-block{padding-left:clamp(1rem,4vw,1.5rem);padding-right:clamp(1rem,4vw,1.5rem)}.hero--lando .hero-mega-line--single{font-size:clamp(2.25rem,12vw,3.75rem)}.hero-ai-ribbon{letter-spacing:.18em;font-size:.6rem}.hero-cta-row{flex-direction:column;width:100%;max-width:280px}.hero-cta{width:100%}.skill-tabs-minimal{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;padding-right:1rem;overflow-x:auto}.skill-tabs-minimal::-webkit-scrollbar{display:none}.skill-tab-minimal{flex-shrink:0}.skills-flow--lando{justify-content:flex-start}.min-list{max-width:100%}.lando-panel{padding:1.15rem 1rem}.ai-ticker{font-size:.58rem}}@media (prefers-reduced-motion:reduce){.ai-ticker__track{animation:none}.lando-panel:hover{transform:none}}.intro-stage{z-index:100;pointer-events:none;position:fixed;inset:0;overflow:hidden}.intro-stage__void{animation:intro-void-lift var(--intro-void-lift-dur,1.05s) var(--intro-void-lift-delay,4.2s) var(--ease-cinematic,cubic-bezier(.16, 1, .3, 1)) forwards;background:#000;position:absolute;inset:0}@keyframes intro-void-lift{0%{opacity:1;background:#000}to{opacity:0;background:#000}}.intro-stage__lift{z-index:4;pointer-events:none;background:0 0;position:absolute;inset:0}html.intro-active{--intro-void-lift-delay:4.3s;--intro-void-lift-dur:1.05s}html.intro-active,html.intro-active body{height:100%;overflow:hidden;background:#000!important}html.intro-active .portfolio-shell--tech>:not(.intro-stage){visibility:hidden}html.intro-active .portfolio-shell--tech>header#home.hero{visibility:visible}html.intro-active .hero--accelerator .hero__layer--scan,html.intro-active .hero--accelerator .hero__layer--vignette{opacity:0}html.intro-active .tech-atmosphere{opacity:0!important}.hero-intro-name-stage{z-index:102;background:0 0;position:relative;overflow:visible}html.intro-active .hero-intro-name-stage{filter:none}html.intro-active .hero-intro-name-stage:before,html.intro-active .hero-intro-name-stage:after{display:none}html.intro-active .hero-boot__name--waiting{opacity:0;visibility:hidden}html.intro-active .hero-boot__name-base,html:not(.intro-active) .hero-boot__name-base{color:var(--text-h)}html.intro-active .hero__tagline,html:not(.intro-active) .hero__tagline{color:var(--text-soft)}html:not(.intro-active) .intro-stage{opacity:0;visibility:hidden;transition:opacity .5s ease-out .15s,visibility .5s .15s}.intro-curtain,.intro-seq{display:none!important}@media (prefers-reduced-motion:reduce){.intro-stage{display:none}html.intro-active,html.intro-active body{background:#000!important}html.intro-active .portfolio-shell--tech>*{visibility:visible}html.intro-active .hero--accelerator .hero__aura,html.intro-active .hero--accelerator .hero__layer{opacity:1!important}.hero-boot__name,.hero-boot__name-wrap,.hero-boot__name-base{opacity:1!important;filter:none!important;color:var(--text-h)!important}.hero-boot__name-shimmer{display:none}}.tech-section{width:100%;max-width:var(--section-content-max);margin:0 auto;position:relative}.tech-section__ambient{pointer-events:none;position:absolute;inset:-1.5rem -.5rem;overflow:hidden}.tech-section__inner{z-index:1;position:relative}.lando-title-module{font-family:var(--font-hero);letter-spacing:.06em;text-transform:none;color:var(--muted);margin-bottom:clamp(.75rem,2vw,1.25rem);font-size:clamp(.62rem,1.2vw,.72rem);font-weight:400;display:block}.tech-section--skills .tech-section__ambient{background:radial-gradient(80% 60% at 50% 0,#ffffff0a,#0000 65%)}.tech-console{border:1px solid var(--border);background:linear-gradient(#ffffff08 0%,#0000 100%);padding:clamp(1rem,2.5vw,1.5rem);position:relative}.tech-console:before{content:"";background:linear-gradient(90deg,#0000,#fff6,#0000);height:1px;position:absolute;top:0;left:0;right:0}.tech-console-tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:center;gap:.35rem 1.5rem;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.tech-console-tab{appearance:none;font-family:var(--font-hero);font-size:var(--type-ui,.875rem);letter-spacing:.04em;color:var(--muted);cursor:pointer;transition:color .35s var(--ease-lando);background:0 0;border:none;padding:.4rem 0;font-weight:500;position:relative}.tech-console-tab.is-active,.tech-console-tab:hover{color:var(--text-h)}.tech-tab-indicator{background:#fff;height:1px;position:absolute;bottom:-1rem;left:0;right:0;box-shadow:0 0 12px #ffffff80}.tech-node-grid{flex-wrap:wrap;justify-content:center;gap:.55rem .7rem;display:flex}.tech-node-chip{border:1px solid var(--border);font-size:var(--type-ui,.875rem);color:var(--text-h);transition:border-color .4s var(--ease-lando), box-shadow .4s var(--ease-lando), transform .4s var(--ease-lando);background:#0006;align-items:center;gap:.5rem;padding:.5rem .9rem;font-weight:500;display:inline-flex;position:relative;overflow:hidden}.tech-node-chip:hover{border-color:#ffffff59;box-shadow:0 0 24px #ffffff14}.tech-node-chip__icon{color:var(--text-soft)}.tech-section--projects .tech-section__ambient{background:radial-gradient(70% 50% at 80%,#ffffff09,#0000 60%)}.tech-project-list{flex-direction:column;gap:clamp(.85rem,2vw,1.15rem);margin:0;padding:0;list-style:none;display:flex}.tech-project-card{border:1px solid var(--border);transition:border-color .45s var(--ease-lando), transform .45s var(--ease-lando);background:linear-gradient(90deg,#ffffff0d 0%,#0000 12%);flex-direction:column;display:flex;position:relative;overflow:visible}.tech-project-card__wm{display:none}.tech-project-card__hex{border:1px solid var(--border);background:rgba(var(--accent-rgb), .04);width:2.5rem;height:2.5rem;color:var(--accent);box-shadow:inset 0 0 12px rgba(var(--accent-rgb), .06);justify-content:center;align-items:center;margin-bottom:.75rem;display:flex}.tech-project-card__body{flex-direction:column;align-items:stretch;gap:0;display:flex}.tech-project-card__body h3,.tech-project-card__title{font-size:var(--type-card-title,1.0625rem);letter-spacing:-.02em;font-weight:600;line-height:var(--type-line-title,1.35);color:var(--text-h);flex:none;min-width:0;margin:0}.tech-project-card__tagline,.tech-project-card__kind{font-size:var(--type-ui,.875rem);font-weight:500;line-height:var(--type-line-meta,1.4);color:var(--accent);letter-spacing:-.01em;margin:0}.tech-project-card__desc{font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.65);color:var(--text-soft);text-wrap:pretty;max-width:52ch;margin:0}.tech-project-card--art .tech-project-card__desc{max-width:none}.tech-project-card__highlights{flex-direction:column;gap:.32rem;margin:0 0 .85rem;padding:0;list-style:none;display:flex}.tech-project-card__highlights li{font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.72);color:var(--muted);padding-left:.85rem;position:relative}.tech-project-card__highlights li:before{content:"";background:var(--accent);opacity:.75;width:4px;height:4px;position:absolute;top:.55em;left:0}.tech-project-card__link,.min-contact__link{box-sizing:border-box;width:auto;max-width:100%;font-family:var(--font-hero);font-size:var(--type-ui,.875rem);letter-spacing:-.01em;text-transform:none;color:var(--text-h);white-space:nowrap;border:2px solid var(--border-strong);transition:color .35s var(--ease-lando), border-color .35s var(--ease-lando), background .35s var(--ease-lando);background:#ffffff05;border-radius:0;justify-content:center;align-items:center;margin:0;padding:.5rem .9rem;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.tech-project-card__link:hover,.tech-project-card__link:focus-visible,.min-contact__link:hover,.min-contact__link:focus-visible{color:var(--accent);border-color:rgba(var(--accent-rgb), .45);background:rgba(var(--accent-rgb), .08);text-decoration:none}.tech-project-card__edge{display:none}.tech-section--timeline .tech-section__ambient{background:radial-gradient(60% 80% at 0%,#ffffff08,#0000 55%)}.tech-pipeline{margin:0;padding:0;list-style:none;position:relative}.tech-pipeline:before{content:"";background:linear-gradient(180deg, transparent, var(--border-strong) 8%, var(--border-strong) 92%, transparent);width:1px;position:absolute;top:1.5rem;bottom:1.5rem;left:1.125rem}.tech-pipeline__item{grid-template-columns:2.25rem 1fr;gap:0 1.5rem;padding:clamp(1.25rem,3vw,1.65rem) 0;display:grid;position:relative}.tech-pipeline__node{z-index:1;border:1px solid var(--border-strong);width:2.25rem;height:2.25rem;color:var(--text-h);background:#000;justify-content:center;align-items:center;font-size:.85rem;display:flex;position:relative;box-shadow:0 0 0 4px #000}.tech-pipeline__node:after{content:"";opacity:0;transition:opacity .4s var(--ease-lando);border:1px solid #ffffff26;position:absolute;inset:-4px}.tech-pipeline__item:hover .tech-pipeline__node:after{opacity:1}.tech-pipeline__card{border:1px solid var(--border);transition:border-color .45s var(--ease-lando), transform .45s var(--ease-lando), box-shadow .45s var(--ease-lando);background:#ffffff05;padding:clamp(1rem,2.5vw,1.35rem) clamp(1.15rem,3vw,1.5rem)}.tech-pipeline__item:hover .tech-pipeline__card{border-color:#ffffff40;transform:translate(6px);box-shadow:-8px 0 32px #ffffff0a}.tech-pipeline__meta{margin-bottom:.4rem;display:block}.tech-pipeline__card h3{font-size:var(--type-card-title,1.0625rem);color:var(--text-h);margin:0 0 .35rem;font-weight:600}.tech-pipeline__card p{font-size:var(--type-card-org,.875rem);color:var(--text-soft);margin:0}.tech-section--education .tech-section__ambient,.tech-section--timeline .tech-section__ambient{background:radial-gradient(65% 55% at 50% 100%,#ffffff0a,#0000 70%)}.tech-edu-stack{gap:var(--credential-stack-gap,clamp(.75rem, 1.75vw, 1rem));width:100%;max-width:var(--section-content-max);flex-direction:column;margin-inline:auto;display:flex}.tech-edu-stack .tech-edu-card{box-sizing:border-box;width:100%}.tech-edu-card:before,.tech-project-card:before{content:"";z-index:5;opacity:.35;transform-origin:top;pointer-events:none;width:2px;transition:transform .45s var(--ease-lando), opacity .45s var(--ease-lando);background:linear-gradient(#0000,#fff,#0000);position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.tech-edu-card:hover,.tech-project-card:hover{border-color:#ffffff47}.tech-edu-card:hover:before,.tech-project-card:hover:before{opacity:1;transform:scaleY(1)}.tech-edu-card{font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.65);grid-template-rows:var(--credential-meta-slot-h,calc(.8125rem * 1.4)) var(--credential-role-slot-h,calc(1.0625rem * 1.35 * 2)) var(--credential-org-slot-h,calc(.875rem * 1.4));place-items:center;gap:var(--credential-row-gap,clamp(.38rem, .9vw, .48rem));text-align:center;padding:var(--credential-pad-y,clamp(.6rem, 1.4vw, .85rem)) var(--credential-pad-x,clamp(.85rem, 2vw, 1.1rem));box-sizing:border-box;border:1px solid var(--border);width:100%;max-width:100%;transition:border-color .45s var(--ease-lando), transform .45s var(--ease-lando);background:linear-gradient(90deg,#ffffff0d 0%,#0000 12%);display:grid;position:relative}.tech-edu-card__date{margin:0}.tech-edu-card__body>.tech-edu-card__meta,.tech-edu-card__meta,.tech-edu-card>.tech-edu-card__meta{min-height:var(--credential-meta-slot-h,calc(.8125rem * 1.4));text-align:center;width:100%;max-width:52ch;font-family:var(--font-hero);font-size:var(--type-card-meta,.8125rem);color:var(--muted);letter-spacing:-.01em;text-transform:none;font-weight:500;line-height:var(--type-line-meta,1.4);grid-row:1;justify-content:center;align-items:center;margin:0;display:flex}.tech-edu-card__primary{margin:0;display:contents}.tech-edu-card__primary h3,.tech-edu-card>h3,.tech-edu-card__role{min-height:var(--credential-role-slot-h,calc(1.0625rem * 1.35 * 2));text-align:center;width:100%;max-width:52ch;font-size:var(--type-card-role,1.0625rem);color:var(--text-h);letter-spacing:-.02em;font-weight:600;line-height:var(--type-line-title,1.35);text-wrap:balance;grid-row:2;justify-content:center;align-items:center;margin:0;display:flex}.tech-edu-card>.tech-reveal-title,.tech-edu-card h3.tech-reveal-title{color:var(--text-h)}.tech-edu-card__body>.tech-edu-card__school,.tech-edu-card__school,.tech-edu-card>.tech-edu-card__school{min-height:var(--credential-org-slot-h,calc(.875rem * 1.4));text-align:center;width:100%;max-width:52ch;font-size:var(--type-card-org,.875rem);line-height:var(--type-line-meta,1.4);color:var(--text-soft);grid-row:3;justify-content:center;align-items:center;margin:0;font-weight:400;display:flex}.tech-edu-card p:not(.tech-edu-card__meta):not(.tech-edu-card__school){font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.65);color:var(--text-soft);margin:0}@media (width<=640px){.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card{align-items:center;gap:var(--credential-row-gap,.72rem);flex-direction:column;display:flex}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__meta,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>.tech-edu-card__meta,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__primary h3,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>h3,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__role,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__school,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>.tech-edu-card__school{grid-row:unset;min-height:0}}.tech-section--contact .tech-section__ambient{background:radial-gradient(55% 70%,#ffffff0d,#0000 68%)}.tech-terminal{border:1px solid var(--border);text-align:center;background:#0009;max-width:560px;margin:0 auto;padding:clamp(2rem,5vw,3rem) clamp(1.5rem,4vw,2.5rem);position:relative}.tech-terminal:before{letter-spacing:.06em;color:var(--muted);font-size:.6rem;position:absolute;top:.85rem;left:1.25rem}.tech-terminal p{font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.72);color:var(--text-soft);margin:1.5rem 0 2rem}.tech-terminal__cta{letter-spacing:.06em;text-transform:uppercase;color:var(--text-h);border:1px solid var(--border-strong);transition:transform .45s var(--ease-lando), box-shadow .45s var(--ease-lando), border-color .45s var(--ease-lando);background:#ffffff0a;align-items:center;gap:.65rem;padding:.85rem 1.75rem;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.tech-terminal__cta:hover{border-color:#fff;box-shadow:0 0 36px #ffffff1f}.tech-section--socials .socials-row{justify-content:center;gap:clamp(1.5rem,4vw,2.5rem);display:flex}.tech-link-pod{border:1px solid var(--border);width:clamp(4.5rem,12vw,5.5rem);height:clamp(4.5rem,12vw,5.5rem);color:var(--text-h);background:rgba(var(--accent-rgb), .03);transition:border-color .45s var(--ease-lando), box-shadow .45s var(--ease-lando), transform .45s var(--ease-lando);justify-content:center;align-items:center;display:flex;position:relative}.tech-link-pod:before{content:"";border:1px solid rgba(var(--accent-rgb), .15);opacity:0;transition:opacity .45s var(--ease-lando);position:absolute;inset:-5px}.tech-link-pod:hover{border-color:#fff6;box-shadow:0 0 40px #ffffff1a}.tech-link-pod:hover:before{opacity:1}.tech-section--footer .footer-content{text-align:center;background:0 0;border:none;padding:0}.tech-section--footer .footer-strip{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;width:100%;padding:.25rem 0 0;display:flex}.tech-section--footer .footer-signoff,.tech-section--footer .copyright{font-family:var(--font-hero);letter-spacing:-.03em;color:var(--text-h);opacity:1;filter:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-weight:500;transform:none}.site-footer .footer-content,.site-footer .footer-strip{filter:none;transform:none}.tech-section--footer .footer-signoff{font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.65);font-weight:500}.tech-section--footer .copyright{font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.65);color:var(--text-soft)}.portfolio-shell--minimal .tech-section--footer .footer-content,.portfolio-shell--lando .tech-section--footer .footer-content{background:0 0;border:none;padding:0}.tech-footer-tag{font-size:var(--type-body,1rem);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem;display:block}.tech-footer-tag:before,.tech-footer-tag:after{content:none;display:none}.portfolio-shell--lando .skills-block,.portfolio-shell--lando .projects-block,.portfolio-shell--lando .education-block,.portfolio-shell--lando .contact-block,.portfolio-shell--lando .socials-block{overflow:visible}.min-section.tech-section-block{padding-left:var(--panel-pad);padding-right:var(--panel-pad)}.portfolio-shell--accelerator .contact-block{padding-bottom:0!important}.tech-section--contact .tech-section__inner{align-items:center;width:100%}.min-contact,.tech-section-reveal.min-contact{text-align:center;flex-direction:column;align-items:center;width:100%;display:flex}.min-contact__copy{max-width:42rem;font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.72);color:var(--text-soft);text-align:center;margin-inline:auto}.contact-actions{--contact-stack-gap:clamp(2.5rem, 6vw, 3.5rem);width:min(100%, var(--section-content-max));margin-inline:auto;align-items:center;gap:var(--contact-stack-gap);flex-direction:column;margin-top:clamp(1rem,2.5vw,1.5rem);display:flex}.contact-social-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(2rem,6vw,3.25rem);width:auto;max-width:100%;margin-inline:auto;display:flex}.min-contact__link{font-size:var(--type-ui,.875rem);padding:var(--contact-cta-pad-y) var(--contact-cta-pad-x);min-height:var(--contact-cta-min-height);align-self:center}.portfolio-shell--tech .min-contact__link{align-self:center;width:auto}.min-contact__link:hover,.min-contact__link:focus-visible{box-shadow:none;transform:none}.contact-social-link{box-shadow:none;background:0 0;border:none;align-items:center;gap:.5rem;padding:0;text-decoration:none;display:inline-flex;transform:none}.contact-social-link__icon{opacity:1;flex-shrink:0}.contact-social-link__label{font-family:var(--font-hero);font-size:var(--type-ui,.875rem);letter-spacing:-.01em;text-transform:none;font-weight:500}.contact-social-link--github,.contact-social-link--github .contact-social-link__label,.contact-social-link--github .contact-social-link__icon{color:#f0f6fc}.contact-social-link--linkedin,.contact-social-link--linkedin .contact-social-link__label,.contact-social-link--linkedin .contact-social-link__icon{color:#0a66c2}.contact-social-link:hover,.contact-social-link:focus-visible{transform:none}@media (width<=600px){.tech-pipeline:before{left:.9rem}.tech-pipeline__item{grid-template-columns:1.75rem 1fr;gap:0 1rem}.tech-pipeline__node{width:1.75rem;height:1.75rem;font-size:.7rem}}:root{--lando-lime:var(--accent,#c8ff00);--lando-lime-dim:var(--accent-glow,#c8ff0059)}.lando-marquee{border-block:1px solid var(--border);background:#0009;width:100%;margin-bottom:clamp(2rem,5vw,3.5rem);padding:.85rem 0;overflow:hidden}.lando-marquee__track{gap:3.5rem;width:max-content;padding-left:1rem;display:flex}.lando-marquee__track span{font-family:var(--font-hero);letter-spacing:.32em;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-size:clamp(.65rem,1.4vw,.78rem);font-weight:500}.lando-marquee__track span:nth-child(odd){color:var(--accent);opacity:.9}.lando-marquee--static{text-align:center;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-size:.75rem}.lando-split-head{text-align:center;perspective:900px;margin-bottom:clamp(2.5rem,6vw,4rem)}.lando-split-head__top,.lando-split-head__bottom{font-family:var(--font-hero);letter-spacing:-.05em;text-transform:uppercase;color:var(--text-h);margin:0;font-weight:500;line-height:.88;display:block}.lando-split-head__top{color:var(--muted);font-size:clamp(2rem,10vw,5rem)}.lando-split-head__bottom{color:var(--text-h);text-shadow:0 0 40px var(--lando-lime-dim);font-size:clamp(2.5rem,12vw,6rem)}.lando-split-head__line{background:linear-gradient(90deg, transparent, var(--lando-lime), transparent);transform-origin:50%;width:min(200px,50%);height:2px;margin:1.25rem auto 0}.lando-rail-wrap{margin:0 calc(-1 * var(--panel-pad,1.5rem));padding:0 var(--panel-pad,1.5rem);position:relative}.lando-rail{scroll-snap-type:x mandatory;scroll-padding-inline:var(--panel-pad,1.5rem);padding:.5rem var(--panel-pad,1.5rem) 1.5rem;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-behavior:smooth;gap:clamp(1rem,2.5vw,1.35rem);display:flex;overflow:auto hidden}.projects-rail__track{scroll-snap-type:x proximity}@media (prefers-reduced-motion:reduce){.projects-rail__track{scroll-behavior:smooth}}.lando-rail::-webkit-scrollbar{display:none}.lando-rail__hint{text-align:right;padding-right:var(--panel-pad,1.5rem);opacity:.5;margin-top:.75rem;display:block}.lando-rail__progress{height:2px;margin:0 var(--panel-pad,1.5rem);background:linear-gradient(90deg, var(--lando-lime), #ffffff80);transform-origin:0%;box-shadow:0 0 12px var(--lando-lime-dim)}.lando-rail .tech-project-card{scroll-snap-align:start;flex:0 0 min(88vw,400px);grid-template-columns:1fr;min-height:min(420px,72vh)}.lando-rail .tech-project-card__wm{display:none}.tech-tab-indicator{background:var(--lando-lime)!important;box-shadow:0 0 14px var(--lando-lime-dim)!important}.tech-project-card:hover .tech-project-card__edge{background:var(--lando-lime);box-shadow:0 0 20px var(--lando-lime-dim)}.tech-console-tab.is-active{color:var(--lando-lime)}@media (width<=600px){.lando-rail .tech-project-card{flex:0 0 92vw}}@media (prefers-reduced-motion:reduce){.lando-marquee__track{animation:none!important}}:root{--lando-lime:var(--accent,#c8ff00);--lando-lime-soft:var(--accent-muted,#c8ff0024);--lando-lime-glow:var(--accent-glow,#c8ff0059);--chapter-pad:clamp(6rem, 16vh, 11rem)}.portfolio-shell--champion{--section-gap:var(--chapter-pad)}.portfolio-shell--champion .hero.hero--lando{flex-direction:column;min-height:100svh;display:flex}.portfolio-shell--champion .hero-stage{flex:1;justify-content:center;align-items:center;min-height:calc(100svh - 88px);display:flex;position:relative}.portfolio-shell--champion .hero-mega-line--single{letter-spacing:-.055em;color:#fff;text-align:center;filter:drop-shadow(0 0 48px var(--lando-lime-soft));font-size:clamp(2.5rem,12vw,8.5rem)}.portfolio-shell--champion .hero-ai-ribbon{color:var(--lando-lime);letter-spacing:.32em}.portfolio-shell--champion .hero-cta{text-transform:uppercase;letter-spacing:.14em;border-color:#d4ff5859;font-size:.75rem}.portfolio-shell--champion .hero-cta:hover{border-color:var(--lando-lime);background:var(--lando-lime-soft);box-shadow:0 0 32px var(--lando-lime-soft)}.portfolio-shell--champion .hero-scroll-hint{color:var(--lando-lime);letter-spacing:.35em;position:absolute;bottom:clamp(1.5rem,4vh,2.5rem);left:50%;transform:translate(-50%)}.portfolio-shell--champion .hero-scroll-hint__line{background:linear-gradient(to bottom, var(--lando-lime), transparent);height:48px}.portfolio-shell--champion .nav-links a{transition:color .35s var(--ease-lando);position:relative}.portfolio-shell--champion .nav-links a.is-active{color:var(--lando-lime)}.portfolio-shell--champion .nav-links a.is-active:after{content:"";background:var(--lando-lime);height:1px;box-shadow:0 0 10px var(--lando-lime-glow);position:absolute;bottom:-6px;left:0;right:0}.portfolio-shell--champion .nav--centered{justify-content:center;width:100%;display:flex}.portfolio-shell--champion .nav--centered .nav-links{justify-content:center}.lando-chapter{position:relative;overflow:hidden}.lando-chapter__wm{letter-spacing:-.06em;color:#0000;-webkit-text-stroke:1px #ffffff0f;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0;font-size:clamp(6rem,28vw,16rem);font-weight:600;line-height:.85;position:absolute;top:0;right:clamp(-.05em,2vw,.05em)}.lando-chapter__content{z-index:1;position:relative}.portfolio-shell--champion .content-block{min-height:min(70vh, auto);flex-direction:column;justify-content:center;display:flex}.portfolio-shell--champion .skills-block,.portfolio-shell--champion .projects-block{min-height:min(85vh, auto)}.lando-marquee-stack{flex-direction:column;gap:0;margin-bottom:clamp(2rem,5vw,3.5rem);display:flex}.lando-marquee__track--css{gap:3.5rem;width:max-content;animation:36s linear infinite reverse lando-marquee-x;display:flex}@keyframes lando-marquee-x{0%{transform:translate(0)}to{transform:translate(-50%)}}.lando-marquee--lime .lando-marquee__track span{color:var(--muted)}.lando-marquee--lime .lando-marquee__track span:nth-child(3n){color:var(--lando-lime)}.portfolio-shell--champion .lando-rail .tech-project-card{background:linear-gradient(145deg,#ffffff0d 0%,#0006 100%);border-color:#ffffff24;flex:0 0 min(85vw,480px);min-height:280px;padding:clamp(1.75rem,4vw,2.25rem)}.portfolio-shell--champion .tech-project-card__body h3{font-size:clamp(1.15rem,2.5vw,1.45rem)}.portfolio-shell--champion .tech-project-card__hex{width:3rem;height:3rem;color:var(--lando-lime);background:#d4ff580f;border-color:#d4ff5840}.portfolio-shell--champion .tech-console{border-color:#d4ff581f;box-shadow:0 0 60px #00000080,inset 0 0 40px #d4ff5805}.portfolio-shell--champion .tech-node-chip:hover{box-shadow:0 0 20px var(--lando-lime-soft);border-color:#d4ff5866}.portfolio-shell--champion .tech-pipeline__node{color:var(--lando-lime);border-color:#d4ff5859}.portfolio-shell--champion .tech-pipeline:before{background:linear-gradient(#0000,#d4ff5840 12% 88%,#0000)}.portfolio-shell--champion .tech-edu-card:before{background:linear-gradient(180deg, transparent, var(--lando-lime), transparent)}.portfolio-shell--champion .tech-terminal{box-shadow:0 0 48px var(--lando-lime-soft);border-color:#d4ff5833}.portfolio-shell--champion .tech-terminal__cta{color:var(--lando-lime);border-color:#d4ff5866}.portfolio-shell--champion .tech-terminal__cta:hover{background:var(--lando-lime);color:#000;box-shadow:0 0 40px var(--lando-lime-glow)}.portfolio-shell--champion .tech-link-pod:hover{border-color:var(--lando-lime);color:var(--lando-lime)}.portfolio-shell--champion .tech-footer-tag{color:var(--lando-lime)}.portfolio-shell--champion .site-footer .footer-content h2{letter-spacing:-.03em;font-size:clamp(1.5rem,4vw,2.5rem)}.lando-chapter-divider{opacity:.6;background:linear-gradient(90deg,#0000,#d4ff5859,#0000);max-width:960px;height:1px;margin:0 auto}.portfolio-shell--champion .lando-split-head__bottom{text-shadow:0 0 60px var(--lando-lime-soft)}@media (width<=600px){.lando-chapter__wm{font-size:5rem;right:-.02em}.portfolio-shell--champion .hero-mega-line--single{white-space:normal;text-align:center;font-size:clamp(2rem,11vw,2.75rem)}}@media (prefers-reduced-motion:reduce){.portfolio-shell--champion .hero-mega-line--single{-webkit-text-stroke:unset;color:#fff;background:0 0}}.lando-title-module,.tech-meta--code,.tech-terminal:before,.lando-rail__hint,.hero-scroll-hint span,.tech-footer-tag{font-family:var(--font-hero);font-variant-numeric:slashed-zero}.lando-title-module.tech-meta--code{text-transform:none;letter-spacing:.06em;font-weight:400}.lando-title-module.tech-meta--code:before,.tech-footer-tag:before,.tech-footer-tag:after,.hero-scroll-hint span:before,.tech-edu-card__date:before,.tech-console:before,.tech-terminal:before{display:none;content:none!important}.lando-marquee--texture .lando-marquee__track span{font-family:var(--font-hero);letter-spacing:.2em;text-transform:none;color:var(--muted);font-size:clamp(.65rem,1.2vw,.75rem)}.lando-marquee--texture .lando-marquee__track span:nth-child(3n){color:var(--accent);opacity:.55}.portfolio-shell--accelerator{-webkit-font-smoothing:antialiased}.portfolio-shell--accelerator *{-webkit-tap-highlight-color:transparent}.section-wipe{pointer-events:none;height:1px;margin:0;position:relative;overflow:visible}.section-wipe__line{background:linear-gradient(90deg, transparent 0%, var(--accent) 42%, var(--accent) 58%, transparent 100%);opacity:.55;transform-origin:0;width:100%;height:1px;animation:section-wipe-in 1.1s var(--ease-cinematic) forwards;display:block;transform:scaleX(0)}@keyframes section-wipe-in{to{transform:scaleX(1)}}.lando-split-head__badge{font-family:var(--font-hero);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);background:0 0;border:none;align-items:center;gap:.45rem;margin-bottom:.65rem;padding:0;font-size:.58rem;display:inline-flex}.lando-split-head__badge-icon{color:var(--accent);flex-shrink:0}.lando-split-head__badge-path{color:var(--muted);letter-spacing:.08em}.lando-split-head__badge-signal{color:var(--accent);margin-left:.25rem;padding-left:.35rem;font-weight:500}.lando-split-head .lando-title-module{margin-bottom:clamp(.85rem,2vw,1.15rem)}.tech-section--footer .footer-content .lando-split-head__badge{margin-bottom:.5rem}.tech-section--footer .footer-content .lando-title-module{margin-bottom:1rem}.tech-glyph{color:var(--accent);flex-shrink:0}.tech-project-card__stack{flex-wrap:wrap;gap:.35rem;margin-bottom:.65rem;display:flex}.tech-ext{font-family:var(--font-hero);letter-spacing:.06em;border:1px solid var(--border);color:var(--text-soft);background:var(--bg-card);box-shadow:none;background-image:none;border-radius:0;padding:.15rem .4rem;font-size:.62rem}.tech-ext:before,.tech-ext:after{content:none!important;display:none!important}.portfolio-shell--accelerator .tech-project-card{flex-direction:column;gap:.5rem;grid-template-columns:1fr!important;padding:1rem 1.1rem 1.15rem!important;display:flex!important}.portfolio-shell--accelerator .tech-project-card__wm{display:none}.tech-project-card__build{font-family:var(--font-hero);letter-spacing:.06em;text-transform:none;color:var(--accent);margin-bottom:.35rem;font-size:.6rem}.tech-project-card__loader{background:var(--border);height:2px;position:absolute;top:0;left:0;right:0;overflow:hidden}.tech-project-card__loader-bar{background:var(--accent);width:0%;height:100%;box-shadow:0 0 12px var(--accent-glow);display:block}.tech-project-card.is-inview .tech-project-card__loader-bar{animation:process-load 1.2s var(--ease-cinematic) forwards}@keyframes process-load{to{width:100%}}.tech-project-card__edge{background:var(--accent)!important;box-shadow:0 0 16px var(--accent-glow)!important}.tech-project-card:after{content:"";pointer-events:none;transition:opacity .45s var(--ease-cinematic);opacity:0;border:1px solid #0000;position:absolute;inset:0}.tech-project-card:hover:after{opacity:1;border-color:var(--accent);box-shadow:inset 0 0 24px var(--accent-muted)}.tech-pipeline__node{flex-direction:column;align-items:center;gap:.2rem;display:flex}.tech-pipeline__hash{font-family:var(--font-hero);letter-spacing:.08em;color:var(--accent);opacity:.85;font-size:.52rem}.tech-pipeline:before{opacity:.35;background:linear-gradient(180deg, transparent, var(--accent) 12%, rgba(var(--accent-rgb), .25) 50%, var(--accent) 88%, transparent)!important}.tech-skill-tag{border:1px solid var(--border);font-family:var(--font-hero);letter-spacing:.04em;color:var(--text-soft);background:#ffffff05;align-items:center;gap:.45rem;padding:.45rem .7rem .45rem .55rem;font-size:.72rem;display:inline-flex;position:relative;overflow:hidden}.tech-skill-tag__code{color:var(--accent);text-align:center;min-width:1.75rem;font-size:.58rem;font-weight:600}.tech-skill-tag__meter{background:var(--accent);width:0%;height:2px;box-shadow:0 0 8px var(--accent-glow);transition:width .55s var(--ease-cinematic);position:absolute;bottom:0;left:0}.tech-skill-tag:hover .tech-skill-tag__meter{width:100%}.tech-skill-tag:hover{border-color:rgba(var(--accent-rgb), .35);color:var(--text-h)}.tech-console-tab:before{content:attr(data-path);font-family:var(--font-hero);letter-spacing:.06em;color:var(--muted);margin-bottom:.15rem;font-size:.55rem;display:block}.tech-console-tab.is-active:before{color:var(--accent)}.tech-console-tab__head{align-items:center;gap:.4rem;display:inline-flex}.tech-console-tab__icon{color:var(--muted);transition:color .35s var(--ease-cinematic);flex-shrink:0}.tech-console-tab.is-active .tech-console-tab__icon,.tech-console-tab:hover .tech-console-tab__icon{color:var(--accent)}.tech-link-pod .tech-glyph{color:var(--text-soft);transition:color .3s var(--ease-cinematic)}.tech-link-pod:hover .tech-glyph{color:var(--accent)}.tech-terminal__cta:after{content:none;display:none}@media (prefers-reduced-motion:reduce){.section-wipe__line{animation:none;transform:scaleX(1)}.tech-project-card__loader-bar{width:100%;animation:none}}.portfolio-shell--accelerator{--rect-radius:0px;--rect-radius-sm:2px}.portfolio-shell--accelerator .deploy-card__body,.portfolio-shell--accelerator .sync-card__body,.portfolio-shell--accelerator .tech-project-card,.portfolio-shell--accelerator .tech-console,.portfolio-shell--accelerator .tech-edu-card,.portfolio-shell--accelerator .tech-terminal,.portfolio-shell--accelerator .tech-skill-tag,.portfolio-shell--accelerator .tech-ext,.portfolio-shell--accelerator .lando-split-head__badge,.portfolio-shell--accelerator .tech-link-pod,.portfolio-shell--accelerator .contact-social-link{border-radius:var(--rect-radius-sm)}.portfolio-shell--accelerator .tech-link-pod{border-radius:var(--rect-radius-sm);border:1px solid var(--border);background:rgba(var(--accent-rgb), .04);justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.portfolio-shell--accelerator .tech-project-card__hex{display:none}.portfolio-shell--accelerator .lando-marquee{border-radius:0}.portfolio-shell--accelerator .tech-node-chip:hover,.portfolio-shell--accelerator .tech-project-card:hover,.portfolio-shell--accelerator .tech-edu-card:hover,.portfolio-shell--accelerator .contact-social-link:hover,.portfolio-shell--accelerator .tech-terminal__cta:hover,.portfolio-shell--accelerator .tech-link-pod:hover,.portfolio-shell--accelerator .deploy-card__body:hover,.portfolio-shell--accelerator .sync-card__body:hover,.portfolio-shell--accelerator .lando-panel:hover{transform:none!important}.portfolio-shell--accelerator .tech-section__ambient{border-radius:0}.section-head{text-align:center;margin-top:0;margin-bottom:var(--section-head-gap);padding:var(--section-title-offset) 0 var(--section-head-pad-y);position:relative}.section-head__title-wrap{isolation:isolate;justify-content:center;align-items:center;width:100%;max-width:min(100%,56rem);margin:0 auto;padding:clamp(.5rem,1.5vw,1rem) 0 clamp(.65rem,1.75vw,1rem);display:flex;position:relative;overflow:visible}.section-head__title{z-index:1;font-family:var(--font-hero);font-size:var(--type-section,clamp(1.75rem, 3.75vw, 2.125rem));letter-spacing:-.03em;text-transform:none;font-feature-settings:"cv02", "cv03", "cv04", "cv11";text-wrap:balance;flex-wrap:wrap;flex:none;justify-content:center;align-items:baseline;gap:.2em .28em;margin:0;padding:.12em .08em;font-weight:500;line-height:1.08;display:flex;position:relative}.section-head__title--single{gap:0}.section-head__word,.section-head__word--accent,.section-head__word--solo{color:var(--text-h);will-change:opacity, transform, filter;text-shadow:0 0 #0000;transition:text-shadow .6s;display:inline-block}.section-head.is-visible .section-head__word,.section-head.is-visible .section-head__word--solo{text-shadow:0 0 32px #ffffff0f}.section-head__word--accent{color:var(--text-h)}.section-head.is-visible .section-head__word--accent{text-shadow:0 0 32px #ffffff0f}.portfolio-shell--minimal .section-head__word,.portfolio-shell--minimal .section-head__word--accent,.portfolio-shell--minimal .section-head__word--solo{color:var(--text-h)}.section-head__underline{z-index:0;transform-origin:50%;pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff8c,#0000);width:min(11rem,42vw);height:1px;position:absolute;bottom:0;left:50%;box-shadow:0 0 20px #ffffff1f}@media (width<=640px){.section-head{padding-top:clamp(2rem,7vw,2.75rem)}.section-head__title{font-size:clamp(1.6rem,7vw,1.95rem)}}@media (prefers-reduced-motion:reduce){.section-head__underline{display:none}.section-head__word,.section-head__word--accent,.section-head__word--solo{text-shadow:none;filter:none!important;opacity:1!important;transform:none!important}}.scroll-reveal--tech,.tech-stagger,.content-block[class*=block]:not(.site-footer),.tech-section-reveal--scroll{will-change:opacity, transform, filter}.tech-reveal-title:after{display:none}.section-head--tech-reveal .section-head__title-wrap{position:relative;overflow:visible}.tech-section-reveal.is-inview .skill-chip-minimal{box-shadow:0 0 0 1px rgba(var(--accent-rgb), .08)}.tech-section-reveal{will-change:opacity, transform, filter;width:100%}.tech-section-reveal.is-inview{animation:.9s cubic-bezier(.16,1,.3,1) forwards tech-section-glow}@keyframes tech-section-glow{0%{filter:brightness(.92)}to{filter:brightness()}}.portfolio-shell--tech .content-block.is-section-active .tech-section__inner{transition:filter .5s}.portfolio-shell--tech .tech-project-card__body h3{font-family:var(--font-hero);font-size:var(--type-card-title,1.0625rem);line-height:var(--type-line-title,1.35)}.portfolio-shell--tech .tech-edu-card>h3,.portfolio-shell--tech .tech-edu-card__primary h3{font-family:var(--font-hero);font-size:var(--type-card-role,1.0625rem);line-height:var(--type-line-title,1.35)}@media (prefers-reduced-motion:reduce){.scroll-reveal--tech,.tech-stagger,.section-head__word{filter:none!important;opacity:1!important;transform:none!important}}.tech-section-reveal--about.is-inview .about__accent-line{animation:.72s cubic-bezier(.16,1,.3,1) .28s forwards section-about-line}@keyframes section-about-line{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}.tech-section-reveal--experience.is-inview .tech-edu-card,.tech-section-reveal--volunteer.is-inview .tech-edu-card{border-left-color:rgba(var(--accent-rgb), .22);transition:border-color .5s}.tech-section-reveal--contact.is-inview .min-contact__copy{text-shadow:0 0 40px rgba(var(--accent-rgb), .08)}@media (prefers-reduced-motion:reduce){.tech-section-reveal--about.is-inview .about__accent-line{opacity:1;animation:none;transform:none}}.tech-project-card{text-align:left;box-sizing:border-box;min-height:var(--project-card-height,clamp(15.75rem, 36vw, 17.5rem));isolation:isolate;--project-card-art-w:clamp(5.5rem, 22vw, 6.75rem);--project-card-art-h:clamp(4.25rem, 17vw, 5.25rem);flex-direction:column;align-items:stretch;height:100%;padding:clamp(1.15rem,2.75vw,1.5rem);display:flex;position:relative;overflow:hidden}.tech-project-card__trace,.tech-project-card__art,.project-card-art{display:none!important}.project-card-art__svg{width:100%;height:100%;display:block;overflow:visible}.project-card-art__baseline{fill:none;stroke:#ffffff1f;stroke-width:1px;stroke-linecap:round}.project-card-art__bar{stroke:#ffffff61;stroke-width:2.25px;stroke-linecap:round;vector-effect:non-scaling-stroke}.project-card-art__accent-bar{stroke:var(--accent,#708d81);stroke-width:2.5px;stroke-linecap:round;vector-effect:non-scaling-stroke}.project-card-art__orbit,.project-card-art__wave,.project-card-art__tick,.project-card-art__pulse,.project-card-art__crown,.project-card-art__btc{fill:none;stroke:#ffffff73;stroke-width:1.15px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.project-card-art__ring,.project-card-art__frame{fill:none;stroke:#ffffff52;stroke-width:1.1px;vector-effect:non-scaling-stroke}.project-card-art__grid{fill:none;stroke:#ffffff29;stroke-width:.9px;vector-effect:non-scaling-stroke}.project-card-art--bitcoin .project-card-art__accent-bar,.project-card-art--bitcoin .project-card-art__btc{stroke:#ebc369e0}.project-card-art--bitcoin .project-card-art__ring{stroke:#ebc36973}.tech-project-card:hover .tech-project-card__art,.tech-project-card:hover .project-card-art{opacity:1}.tech-project-card:hover .project-card-art__bar{stroke:#ffffff8c}.tech-project-card:hover .project-card-art__accent-bar{stroke:var(--accent,#708d81);filter:drop-shadow(0 0 6px rgba(var(--accent-rgb), .5))}.tech-project-card__body{z-index:1;box-sizing:border-box;flex-direction:column;flex:auto;align-items:stretch;gap:0;width:100%;min-height:0;padding-right:0;display:flex;position:relative}.tech-project-card__body h3,.tech-project-card__title,.tech-project-card__desc{text-align:left;width:100%;max-width:100%;margin:0;padding:0}.projects-grid .tech-project-card__body h3,.projects-grid .tech-project-card__title,.projects-grid .tech-project-card__kind,.projects-grid .tech-project-card__desc,.projects-grid .tech-project-card__copy{text-align:center}.tech-project-card__title{line-height:var(--type-line-title,1.35);flex-shrink:0}.tech-project-card__kind{flex:none}.tech-project-card__desc{line-height:var(--type-line-body,1.65);font-size:var(--type-body,1rem);flex:auto;min-height:0;margin-top:0}.tech-project-card__foot{padding:var(--project-card-foot-gap,clamp(1rem, 2vw, 1.35rem)) 0 0;flex-shrink:0;align-self:flex-start;width:100%;margin-top:auto}.projects-grid .tech-project-card__foot{padding:var(--project-card-foot-gap,clamp(.4rem, 1vw, .6rem)) 0 0;margin-top:auto}.projects-grid .tech-project-card__desc{flex:none}.tech-project-card__link{box-sizing:border-box;font-family:var(--font-hero);font-size:var(--type-ui,.875rem);letter-spacing:-.01em;color:var(--text-h);border:1px solid var(--border-strong);background:#ffffff05;border-radius:4px;justify-content:center;align-items:center;margin:0;padding:.5rem .9rem;font-weight:500;line-height:1;text-decoration:none;transition:color .25s,border-color .25s,background .25s;display:inline-flex}.tech-project-card__link:hover,.tech-project-card__link:focus-visible{color:var(--accent);border-color:rgba(var(--accent-rgb), .45);background:rgba(var(--accent-rgb), .08);text-decoration:none}.portfolio-shell--tech .projects-grid .tech-project-card__foot{align-self:center;width:100%}.portfolio-shell--tech .tech-project-card__link{align-self:flex-start;margin-inline:0}.portfolio-shell--tech .tech-project-card:after,.portfolio-shell--tech .tech-project-card__edge,.portfolio-shell--tech .tech-project-card__loader,.portfolio-shell--tech .tech-project-card .tech-reveal-title:after{display:none!important}.portfolio-shell--tech.portfolio-shell--minimal.portfolio-shell--lando{flex-direction:column;display:flex}.portfolio-shell--tech.portfolio-shell--minimal{--tech-grid:#ffffff0d;--tech-panel:#000;--tech-chrome:var(--font-hero)}.portfolio-shell--minimal .content-block{border-top:1px solid #0000;position:relative}.portfolio-shell--minimal header#home{border-top:none}.portfolio-shell--minimal header#home:after{display:none}.portfolio-shell--minimal .content-block.site-footer,.portfolio-shell--minimal footer.site-footer.content-block{border-top:none}.portfolio-shell--minimal .content-block.site-footer:before,.portfolio-shell--minimal footer.site-footer.content-block:before,.portfolio-shell--minimal .content-block.site-footer:after,.portfolio-shell--minimal footer.site-footer.content-block:after{display:none}.portfolio-shell--minimal .tech-section__ambient{opacity:.35}.portfolio-shell--minimal .about__copy{font-family:var(--font-hero);color:var(--text-soft);line-height:1.8}.portfolio-shell--minimal .tech-project-card{background:var(--tech-panel);border-color:var(--border);border-radius:0;transition:border-color .25s,background .25s}.portfolio-shell--minimal .tech-project-card:hover{border-color:rgba(var(--accent-rgb), .2);box-shadow:none;background:#0c0c0cfa;transform:none}.portfolio-shell--minimal .tech-project-card:after,.portfolio-shell--minimal .tech-project-card__edge,.portfolio-shell--minimal .tech-project-card__loader{display:none!important}.portfolio-shell--minimal .tech-project-card__wm{display:none}.portfolio-shell--minimal .tech-project-card__body h3{font-family:var(--font-hero);letter-spacing:-.02em;font-weight:500}.portfolio-shell--minimal .tech-project-card__desc{font-family:var(--font-hero);font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.72);color:var(--text-soft)}.portfolio-shell--minimal .tech-project-card__link,.portfolio-shell--minimal .min-contact__link{font-family:var(--font-hero);letter-spacing:-.01em;text-transform:none;color:var(--text-h);border:2px solid var(--border-strong);background:#ffffff05;border-radius:0;font-weight:500;line-height:1}.portfolio-shell--minimal .tech-project-card__link{font-size:var(--type-ui,.875rem)}.portfolio-shell--minimal .min-contact__link{font-size:var(--type-ui,.875rem);padding:var(--contact-cta-pad-y) var(--contact-cta-pad-x);min-height:var(--contact-cta-min-height)}.portfolio-shell--minimal .tech-project-card__link:hover,.portfolio-shell--minimal .tech-project-card__link:focus-visible,.portfolio-shell--minimal .min-contact__link:hover,.portfolio-shell--minimal .min-contact__link:focus-visible{color:var(--accent);border-color:rgba(var(--accent-rgb), .45);background:rgba(var(--accent-rgb), .08);box-shadow:none;text-decoration:none;transform:none}.portfolio-shell--minimal .projects-grid .tech-ext{letter-spacing:.07em;text-transform:lowercase;color:var(--muted);border-color:var(--border);background:#00000059;font-size:.58rem}.portfolio-shell--minimal .tech-edu-card{background:var(--tech-panel);border-color:var(--border);border-radius:0}.portfolio-shell--minimal .tech-edu-card:hover{border-color:rgba(var(--accent-rgb), .2);background:#0c0c0cfa;transform:none}.portfolio-shell--minimal .tech-edu-card__meta{font-family:var(--font-hero);font-size:var(--type-card-meta,.8125rem);letter-spacing:-.01em;text-transform:none}.portfolio-shell--minimal .tech-edu-card>h3{font-family:var(--font-hero);font-size:var(--type-card-role,1.0625rem);font-weight:600;line-height:var(--type-line-title,1.35);letter-spacing:-.02em;color:var(--text-h)}.portfolio-shell--minimal .tech-edu-card__school{font-family:var(--font-hero);font-size:var(--type-card-org,.875rem);line-height:var(--type-line-meta,1.4);letter-spacing:-.01em}.portfolio-shell--minimal .skill-tab-minimal{font-family:var(--font-hero);font-size:var(--type-ui,.875rem);letter-spacing:-.01em;text-transform:none}.portfolio-shell--minimal .skill-chip-minimal{background:#0006;border-radius:0}.portfolio-shell--minimal .skill-chip-minimal__label{font-family:var(--font-hero);font-size:var(--type-ui,.875rem)}.portfolio-shell--minimal .skill-tabs-rail,.portfolio-shell--minimal .skills-panel{width:100%;max-width:var(--section-content-max);margin-inline:auto}.portfolio-shell--minimal .min-contact__copy{font-family:var(--font-hero);max-width:var(--section-content-max);margin-left:auto;margin-right:auto;line-height:1.75}.portfolio-shell--minimal .contact-social-link{box-shadow:none;background:0 0;border:none}.portfolio-shell--minimal .contact-social-link__label{font-family:var(--font-hero);font-size:var(--type-ui,.875rem);letter-spacing:-.01em;text-transform:none}.portfolio-shell--minimal .content-block:not(#home):not(.site-footer),.portfolio-shell--minimal .work-stream-block{border-top-color:#0000}.portfolio-shell--minimal .content-block:not(#home):not(.site-footer):before,.portfolio-shell--minimal .work-stream-block:before{content:"";transform-origin:0;opacity:0;pointer-events:none;z-index:2;background:linear-gradient(90deg,#0000 0%,#ffffff0f 6%,#ffffff24 50%,#ffffff0f 94%,#0000 100%);width:100%;height:1px;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.portfolio-shell--minimal .content-block:not(#home):not(.site-footer):after,.portfolio-shell--minimal .work-stream-block:after{content:"";opacity:0;pointer-events:none;z-index:3;background:linear-gradient(90deg, transparent 0%, rgba(var(--accent-rgb), .35) 42%, var(--accent) 50%, rgba(var(--accent-rgb), .35) 58%, transparent 100%);filter:blur();background-position:-22% 0;background-repeat:no-repeat;background-size:22% 100%;width:100%;height:1px;margin:0;position:absolute;top:0;left:0;right:0;transform:none;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 5% 95%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 5% 95%,#0000 100%)}.portfolio-shell--minimal .content-block.is-sep-revealed:before,.portfolio-shell--minimal .work-stream-block.is-sep-revealed:before{animation:section-sep-track .72s var(--ease-cinematic,cubic-bezier(.16, 1, .3, 1)) forwards}.portfolio-shell--minimal .content-block.is-sep-revealed:after,.portfolio-shell--minimal .work-stream-block.is-sep-revealed:after{animation:section-sep-runner-in .72s .12s var(--ease-cinematic,cubic-bezier(.16, 1, .3, 1)) forwards}.portfolio-shell--minimal .content-block.is-section-active:before,.portfolio-shell--minimal .work-stream-block.is-section-active:before{opacity:.5;transform:scaleX(1)}.portfolio-shell--minimal .content-block.is-section-active:after,.portfolio-shell--minimal .work-stream-block.is-section-active:after{opacity:1;filter:none;box-shadow:none}@keyframes section-sep-track{0%{opacity:0;transform:scaleX(0)}to{opacity:.55;transform:scaleX(1)}}@keyframes section-sep-runner-in{0%{opacity:0;background-position:-22% 0}20%{opacity:.55}to{opacity:0;background-position:122% 0}}.portfolio-shell--minimal.portfolio-shell--lando .content-block:not(#home):not(.site-footer):before,.portfolio-shell--minimal.portfolio-shell--lando .work-stream-block:before{transform-origin:0;border:none;width:100%;height:1px;inset:0 0 auto}.portfolio-shell--minimal.portfolio-shell--lando .content-block:not(#home):not(.site-footer):after,.portfolio-shell--minimal.portfolio-shell--lando .work-stream-block:after{width:100%;left:0;right:0;transform:none}@media (prefers-reduced-motion:reduce){.portfolio-shell--minimal .content-block:before,.portfolio-shell--minimal .content-block:after,.portfolio-shell--minimal .work-stream-block:before,.portfolio-shell--minimal .work-stream-block:after{animation:none!important}.portfolio-shell--minimal .content-block.is-sep-revealed:before,.portfolio-shell--minimal .work-stream-block.is-sep-revealed:before{opacity:.4;transform:scaleX(1)}.portfolio-shell--minimal .content-block.is-sep-revealed:after,.portfolio-shell--minimal .work-stream-block.is-sep-revealed:after{opacity:.45;background-position:50% 0;background-size:40% 100%}}.portfolio-shell--tech .tech-section{flex-direction:column;align-items:center;width:100%;display:flex}.portfolio-shell--tech .tech-section__inner{width:100%;max-width:var(--section-content-max);text-align:center;flex-direction:column;align-items:center;margin-inline:auto;display:flex}.portfolio-shell--tech .section-head,.portfolio-shell--tech .about__copy,.portfolio-shell--tech .min-contact,.portfolio-shell--tech .min-contact__copy,.portfolio-shell--tech .tech-console,.portfolio-shell--tech .skill-tabs-rail,.portfolio-shell--tech .skills-panel,.portfolio-shell--tech .skills-flow,.portfolio-shell--tech .projects-grid,.portfolio-shell--tech .tech-edu-stack,.portfolio-shell--tech .about__accent-line,.portfolio-shell--tech .footer-content{width:100%;max-width:var(--section-content-max);margin-inline:auto}.portfolio-shell--tech .skill-tabs-rail,.portfolio-shell--tech .skills-panel,.portfolio-shell--tech .skills-flow,.portfolio-shell--tech .tech-console-tabs,.portfolio-shell--tech .tech-node-grid{justify-content:center}.portfolio-shell--tech .tech-edu-card{text-align:center}.portfolio-shell--tech .projects-grid .tech-project-card__body,.portfolio-shell--tech .projects-grid .tech-project-card__copy{text-align:center;align-items:center}.portfolio-shell--tech .projects-grid .tech-project-card__foot{justify-content:center;align-self:center;width:100%}.portfolio-shell--tech .projects-grid .tech-project-card__link{align-self:center;margin-inline:auto}.portfolio-shell--tech .tech-edu-card__meta,.portfolio-shell--tech .tech-edu-card__primary{text-align:center}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));grid-auto-rows:var(--project-card-height);width:100%;max-width:var(--section-content-max);align-items:stretch;gap:clamp(1rem,2.5vw,1.25rem);margin:0 auto;display:grid}.projects-grid>*,.projects-grid__cell{min-height:var(--project-card-height);height:var(--project-card-height);flex-direction:column;width:100%;display:flex}.projects-grid__cell>.tech-project-card{width:100%;min-height:var(--project-card-height);height:var(--project-card-height);flex-direction:column;flex:auto;display:flex}.projects-grid .tech-project-card{min-height:var(--project-card-height);height:var(--project-card-height);scroll-snap-align:unset;padding:0}.portfolio-shell--minimal .projects-grid .tech-project-card__body{box-sizing:border-box;width:100%;height:100%;min-height:0;padding:var(--project-card-top-pad) clamp(.85rem, 3vw, 1.25rem) var(--project-card-edge-pad);text-align:center;flex-direction:column;flex:auto;justify-content:flex-start;align-items:center;display:flex}.portfolio-shell--minimal .projects-grid .tech-project-card__copy{text-align:center;flex-direction:column;flex:none;justify-content:flex-start;align-items:center;width:100%;min-height:0;padding:0;display:flex}.portfolio-shell--minimal .projects-grid .tech-project-card__copy h3,.portfolio-shell--minimal .projects-grid .tech-project-card__copy p,.portfolio-shell--minimal .projects-grid .tech-project-card__title,.portfolio-shell--minimal .projects-grid .tech-project-card__kind,.portfolio-shell--minimal .projects-grid .tech-project-card__desc{text-align:center;text-wrap:balance;width:100%;max-width:52ch;margin-inline:auto}.portfolio-shell--minimal .projects-grid .tech-project-card__title,.portfolio-shell--minimal .projects-grid .tech-project-card__copy h3{line-height:var(--type-line-title,1.35);flex:none;margin:0}.portfolio-shell--minimal .projects-grid .tech-project-card__kind{margin:var(--project-card-title-kind-gap) 0 0;font-family:var(--font-hero);font-size:var(--type-ui,.875rem);font-weight:500;line-height:var(--type-line-meta,1.4);letter-spacing:-.01em;color:var(--accent);flex:none;padding:0}.portfolio-shell--minimal .projects-grid .tech-project-card__desc,.portfolio-shell--minimal .projects-grid .tech-project-card__copy>p.tech-project-card__desc{margin:var(--project-card-kind-desc-gap) 0 0;flex:none}.portfolio-shell--minimal .projects-grid .tech-project-card__foot{width:100%;padding:var(--project-card-foot-gap) 0 0;flex:none;justify-content:center;align-self:center;margin-top:auto;display:flex}.portfolio-shell--minimal .projects-grid .tech-project-card__link{align-self:center;margin-inline:auto;padding:.45rem .8rem}.projects-block .projects-grid .tech-project-card__wm{display:none}@media (width>=1100px){.projects-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=640px){.projects-grid{grid-template-columns:1fr;grid-auto-rows:var(--project-card-height)}.portfolio-shell--minimal .projects-grid .tech-project-card__foot,.portfolio-shell--tech .projects-grid .tech-project-card__foot{padding:var(--project-card-foot-gap) 0 0;margin-top:auto}}.portfolio-shell--tech .projects-grid .tech-project-card__foot{padding-top:var(--project-card-foot-gap);margin-top:auto}.portfolio-shell--tech .projects-grid .tech-project-card__desc{flex:none}.tech-scroll-backdrop--solid,.tech-scroll-backdrop{z-index:0;pointer-events:none;contain:strict;background:#000;position:fixed;inset:0;overflow:hidden}.tech-scroll-backdrop--solid .tech-scroll-backdrop__mesh,.tech-scroll-backdrop--solid .tech-scroll-backdrop__spotlight{display:none}.tech-scroll-backdrop:not(.tech-scroll-backdrop--solid){will-change:opacity}.tech-scroll-backdrop__mesh{background-color:#0000;background-image:linear-gradient(rgba(var(--accent-rgb), .07) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--accent-rgb), .07) 1px, transparent 1px), radial-gradient(circle at center, rgba(var(--accent-rgb), .2) .65px, transparent .65px);background-position:50%;background-size:64px 64px,64px 64px,32px 32px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#0000 0%,#00000059 8%,#000 22% 100%);mask-image:linear-gradient(#0000 0%,#00000059 8%,#000 22% 100%)}.tech-scroll-backdrop__spotlight{background:radial-gradient(ellipse 55% 48% at 50% 50%, rgba(var(--accent-rgb), .11) 0%, rgba(var(--accent-rgb), .04) 42%, transparent 72%);pointer-events:none;will-change:top;width:120%;height:min(42vh,28rem);margin-top:0;position:absolute;left:-10%;right:-10%;transform:translateY(-50%)}.tech-scroll-backdrop--static .tech-scroll-backdrop__mesh{opacity:.35}.scroll-tech{z-index:1;pointer-events:none;opacity:0;display:none;position:fixed;inset:0;overflow:hidden}.scroll-tech__track{background:rgba(var(--accent-rgb), .12);isolation:isolate;width:2px;height:100%;position:absolute;top:0;left:clamp(.65rem,2vw,1.25rem)}.scroll-tech__progress{transform-origin:top;background:linear-gradient(180deg, transparent 0%, rgba(var(--accent-rgb), .35) 30%, var(--accent) 100%);width:100%;height:100%;box-shadow:0 0 12px var(--accent-glow);position:absolute;top:0;left:0}.scroll-tech__beam{background:radial-gradient(circle, rgba(var(--accent-rgb), .55) 0%, rgba(var(--accent-rgb), .2) 45%, transparent 70%);width:14px;height:14px;box-shadow:0 0 14px var(--accent-glow);filter:blur(1px);pointer-events:none;border-radius:50%;margin-top:-7px;margin-left:-7px;position:absolute;top:0;left:50%}.content-block.is-section-active,.work-stream-block.is-section-active{position:relative}.content-block.site-footer.is-section-active:before,.content-block.site-footer.is-section-active:after{display:none}@media (prefers-reduced-motion:reduce){.scroll-tech__beam,.tech-scroll-backdrop__spotlight{display:none}}@media (width<=768px){.tech-scroll-backdrop__mesh{background-size:48px 48px,48px 48px,24px 24px}}@media (width<=640px){.scroll-tech__track{display:none}}.site-nav{z-index:60;padding:clamp(.75rem, 2vw, 1rem) var(--container-inline);pointer-events:none;will-change:opacity, transform;justify-content:center;display:flex;position:fixed;top:0;left:0;right:0}.site-nav.is-visible{pointer-events:auto}.site-nav__inner{border:1px solid var(--border);-webkit-backdrop-filter:blur(16px);background:#000000d1;flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(.35rem,1.5vw,.85rem);padding:.5rem clamp(.85rem,2vw,1.15rem);display:flex;box-shadow:0 12px 40px #00000073}.site-nav a{font-family:var(--font-hero);font-size:var(--type-ui,.875rem);letter-spacing:-.02em;text-transform:none;color:var(--muted);box-shadow:none;background:0 0;border:none;justify-content:center;align-items:center;padding:.35rem .55rem;font-weight:500;text-decoration:none;display:inline-flex}.site-nav a:focus-visible{color:var(--text-h);outline:2px solid var(--focus-ring);outline-offset:2px}.site-nav a.is-active{color:var(--muted)}html.intro-active .site-nav{opacity:0!important;pointer-events:none!important}@media (prefers-reduced-motion:reduce){.site-nav{pointer-events:auto;opacity:1;transform:none}}@media (width<=640px){.site-nav__inner{gap:.3rem .45rem;padding:.45rem .65rem}.site-nav a{font-size:max(.8125rem, var(--type-ui,.875rem));padding:.3rem .45rem}}.hero--accelerator{isolation:isolate;width:100%;min-height:100dvh;position:relative;overflow:hidden}.hero--accelerator .hero__viewport{z-index:2;flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;display:flex;position:relative}.hero__layer{pointer-events:none;will-change:transform, opacity;position:absolute;inset:0}.hero__layer--scan,.hero__layer--circuit,.hero__layer--vignette{display:none}.hero__aura,.hero__name-glow{display:none!important}.hero__aura--legacy{z-index:0;pointer-events:none;will-change:transform, opacity;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.hero__aura-bloom{pointer-events:none;border-radius:50%;position:absolute}.hero__aura-bloom--wide{background:radial-gradient(ellipse 50% 45% at 50% 50%, rgba(var(--accent-rgb), .15) 0%, transparent 70%);filter:blur(24px);width:min(95vw,900px);height:min(55vh,500px);animation:9s ease-in-out infinite aura-drift}.hero__aura-bloom--core{background:radial-gradient(ellipse 45% 40% at 50% 50%, #ffffff0f 0%, rgba(var(--accent-rgb), .12) 40%, transparent 72%);filter:blur(18px);width:min(70vw,640px);height:min(38vh,360px);animation:9s ease-in-out .5s infinite reverse aura-drift}.hero__aura-bloom--intro{background:radial-gradient(ellipse 42% 38% at 50% 50%, #ffffff38 0%, rgba(var(--accent-rgb), .35) 38%, transparent 70%);filter:blur(22px);animation:1.8s ease-in-out infinite intro-aura-core-beat}@keyframes intro-aura-core-beat{0%,to{opacity:.7;transform:scale(.98)}50%{opacity:1;transform:scale(1.05)}}@keyframes aura-drift{0%,to{opacity:.75}50%{opacity:1}}.hero__stage-center{opacity:1;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:52rem;margin:0 auto;display:flex;transform:translateY(clamp(-1.5rem,-3.25vh,-.75rem))}.hero__reveal{width:100%;min-height:calc(var(--type-hero-tagline,1.2rem) * var(--type-line-body,1.65));flex-direction:column;align-items:center;margin-top:clamp(.75rem,2.75vw,1.35rem);display:flex}.hero__name-glow{transform-origin:50%;background:linear-gradient(90deg, transparent, var(--accent), transparent);width:min(14rem,55vw);height:1px;box-shadow:0 0 24px var(--accent-glow);opacity:.85;margin:clamp(.75rem,2vw,1rem) auto 0;display:block}html.intro-active .hero__name-glow{box-shadow:0 0 32px #ffffffa6, 0 0 48px rgba(var(--accent-rgb), .4);background:linear-gradient(90deg,#0000,#ffffffe6,#0000)}.hero__tagline{font-family:var(--font-hero);font-size:var(--type-hero-tagline,clamp(1.125rem, 2.65vw, 1.3125rem));line-height:var(--type-line-body,1.65);letter-spacing:-.02em;text-transform:none;color:var(--text-soft);text-wrap:balance;text-align:center;will-change:opacity;background:0 0;border:none;margin:0;padding:0;font-weight:500}.hero__sym-line{z-index:1;background:linear-gradient(180deg, transparent, rgba(var(--accent-rgb), .35) 20%, #ffffff1f 50%, rgba(var(--accent-rgb), .35) 80%, transparent);width:1px;position:absolute;top:18%;bottom:22%}.hero__sym-line--left{left:clamp(1.25rem,8vw,6rem)}.hero__sym-line--right{right:clamp(1.25rem,8vw,6rem)}.hero__lightning{z-index:0;pointer-events:none;opacity:0;transition:opacity .8s var(--ease-cinematic);position:absolute;inset:0;overflow:hidden}.hero__lightning.is-live{opacity:.55}.hero__bolt{background:linear-gradient(to bottom, transparent, var(--accent), transparent);width:1px;height:48%;filter:drop-shadow(0 0 10px var(--accent-glow));opacity:0;position:absolute;top:-5%;transform:scaleY(0)}.hero__bolt--1{animation:6s ease-in-out infinite bolt-strike;left:28%}.hero__bolt--2{animation:7.5s ease-in-out 1.2s infinite bolt-strike;left:50%}.hero__bolt--3{animation:5.5s ease-in-out 2.4s infinite bolt-strike;left:72%}@keyframes bolt-strike{0%,90%,to{opacity:0;transform:scaleY(0)}91%{opacity:.9;transform:scaleY(1)}94%{opacity:0;transform:scaleY(.15)}}.hero__stage{width:100%;padding:0 var(--container-inline);flex-direction:column;flex:none;justify-content:center;align-items:center;display:flex}.hero__core{text-align:center;flex-direction:column;align-items:center;min-width:min(100%,20rem);display:flex;position:relative}.hero-boot__bio{max-width:38rem;font-size:var(--type-body);line-height:var(--type-line-body);color:var(--text-soft);text-wrap:pretty;margin:0 0 clamp(1.5rem,4vw,2rem);padding:0 .25rem}.hero-boot__bio--typed{min-height:5.5em}.hero-typewriter{display:inline}.hero-typewriter__cursor{vertical-align:-.08em;background:var(--accent);width:2px;height:.95em;box-shadow:0 0 10px var(--accent-glow);margin-left:1px;animation:.85s step-end infinite hero-type-cursor-blink;display:inline-block}.hero-typewriter__cursor--off{opacity:0;animation:none}@keyframes hero-type-cursor-blink{0%,49%{opacity:1}50%,to{opacity:.15}}.hero__core h1.hero-intro-name-stage{background:0 0;padding-block:.02em .04em;line-height:1.12;position:relative;overflow:visible}.hero-boot__name,.hero-boot__name-wrap{font-family:var(--font-hero);letter-spacing:-.03em;color:var(--text-h);white-space:normal;font-feature-settings:"cv02", "cv03", "cv04", "cv11";background:0 0;margin:0;font-size:clamp(2.85rem,11.5vw,6.75rem);font-weight:500;line-height:1.12;display:block}.hero-boot__name--waiting{opacity:0;visibility:hidden}.hero-boot__name-wrap{z-index:1;vertical-align:bottom;box-shadow:none;background:0 0;padding-bottom:.02em;display:inline-block;position:relative;overflow:visible}.hero-boot__name-base{z-index:1;color:var(--text-h);background:0 0;display:inline-block;position:relative}.hero-boot__name-shimmer{z-index:2;pointer-events:none;font:inherit;letter-spacing:inherit;line-height:inherit;white-space:nowrap;background-image:linear-gradient(105deg, var(--text-h) 0%, var(--text-h) 34%, var(--accent) 42%, var(--text-h) 48%, var(--text-h) 52%, var(--accent-dim) 56%, var(--text-h) 64%, var(--text-h) 100%);color:#0000;-webkit-text-fill-color:transparent;filter:none;background-repeat:no-repeat;background-size:280% 100%;-webkit-background-clip:text;background-clip:text;display:inline-block;position:absolute;inset:0 0 -.1em}.hero-boot__name-shimmer--lightning{background-image:linear-gradient(100deg, transparent 0%, transparent 38%, #ffffff26 44%, #fff 48%, rgba(var(--accent-rgb), .95) 50%, #fff 52%, #fff3 56%, transparent 62%, transparent 100%);filter:drop-shadow(0 0 18px #ffffffd9);background-size:320% 100%}html.intro-active .hero-boot__name-wrap--live,html:not(.intro-active) .hero-boot__name-wrap--live{filter:none}.hero-boot__subtitle{min-height:1.65rem;font-family:var(--font-hero);font-size:var(--type-ui);line-height:var(--type-line-meta);letter-spacing:-.01em;color:var(--text-soft);justify-content:center;align-items:center;gap:.35rem;margin:0 0 clamp(1.5rem,4vw,2rem);display:flex}.hero-boot__prompt{color:var(--accent);flex-shrink:0}.hero-boot__subtitle-slot{justify-content:flex-start;min-width:min(16rem,70vw);display:inline-flex}.hero-boot__subtitle-line{color:var(--text-h)}.hero-boot__cursor-inline{vertical-align:text-bottom;background:var(--accent);width:.45em;height:1em;margin-left:.2rem;animation:1.1s step-end infinite cursor-blink;display:inline-block}@media (width<=720px){.hero__symmetry{grid-template-columns:1fr;gap:1rem}.hero__sym-rule{width:min(12rem,70%);margin:0 auto;background:linear-gradient(90deg, transparent, var(--accent), transparent)!important}.hero-boot__name{white-space:normal;text-wrap:balance;font-size:clamp(2.35rem,10vw,3.5rem)}.hero__sym-line{display:none}}@media (prefers-reduced-motion:reduce){.hero__aura-bloom,.hero__bolt,.hero-boot__status-dot,.hero-boot__cursor-inline,.hero-typewriter__cursor{animation:none}.hero-boot__bio--typed{min-height:0}}.about__copy{max-width:var(--section-content-max);text-align:center;font-family:var(--font-hero);font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.65);color:var(--text-soft);text-wrap:pretty;margin:0 auto}.about__accent-line{background:linear-gradient(90deg, transparent, var(--accent), transparent);width:min(10rem,40vw);height:1px;box-shadow:0 0 20px var(--accent-glow);transform-origin:50%;opacity:0;margin:clamp(1.5rem,4vw,2rem) auto 0;transform:scaleX(0)}@media (prefers-reduced-motion:reduce){.about__accent-line{opacity:1;transform:none}}.portfolio-shell{width:min(1280px, calc(100% - 2 * var(--container-inline)));z-index:1;margin:0 auto;padding:clamp(20px,3vw,32px) 0 clamp(2rem,5vw,3.25rem);position:relative}.portfolio-shell--tech{width:min(1320px, calc(100% - 2 * var(--container-inline)))}.portfolio-shell--tech.portfolio-shell--minimal{padding-top:0;padding-bottom:clamp(.75rem,2vw,1.25rem)}.hero,.feature-band{z-index:1;margin-bottom:0;position:relative}.hero.hero--tech{flex-direction:column;justify-content:space-between;min-height:100svh;padding-bottom:0;display:flex;position:relative}.nav{justify-content:space-between;align-items:center;gap:24px;padding:clamp(12px,2vw,20px) 0 clamp(28px,4vw,44px);display:flex}.hero--tech .nav--centered,.hero--tech .nav--symmetric{justify-content:center;align-items:center;width:100%;display:flex}.hero--tech .nav--centered .nav-links,.hero--tech .nav--symmetric .nav-links{justify-content:center}.wordmark,.nav-links a,.primary-link,.secondary-link{text-decoration:none}.wordmark{color:var(--text-h);font-family:var(--font-hero);letter-spacing:-.02em;text-transform:none;font-size:1rem;font-weight:600;transition:opacity .2s,transform .2s,color .2s}.portfolio-shell--tech .wordmark:hover{color:var(--text-h);opacity:.75}.wordmark:hover{opacity:.7}.nav-links{flex-wrap:wrap;gap:clamp(10px,2.2vw,20px);display:flex}.nav-links a{color:var(--muted);font-size:.8125rem;font-family:var(--font-hero);text-transform:uppercase;letter-spacing:.06em;transition:color .22s var(--ease-smooth), transform .22s var(--ease-smooth);font-weight:500}.nav-links a:hover{color:var(--text-h)}.section-kicker{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;margin:0 0 16px;font-size:.76rem;font-weight:600}.hero-stage{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;min-height:min(72vh,820px);padding:clamp(1.5rem,4vh,3rem) 0;display:flex;position:relative}.hero-frame{background:radial-gradient(90% 70% at 50% 0,#ffffff0a,#0000 58%),linear-gradient(#0e0e0ee6,#000000d9);border:1px solid #ffffff1f;border-radius:32px;width:min(940px,100% - 2.5rem);margin:0 auto;padding:clamp(2.75rem,7vw,4.5rem) clamp(2rem,5vw,3.25rem);position:relative;overflow:visible;box-shadow:0 0 60px #00000080,inset 0 0 80px #ffffff05}@media (prefers-reduced-motion:no-preference){.hero-frame{animation:5.5s ease-in-out infinite hero-frame-pulse}.hero-frame:after{content:"";border-radius:inherit;pointer-events:none;clip-path:inset(0 round 32px);background:linear-gradient(105deg,#0000 38%,#22d3ee0f 48%,#0000 58%);animation:9s linear infinite hero-frame-shimmer;position:absolute;inset:0}}@keyframes hero-frame-pulse{0%,to{border-color:#ffffff1a;box-shadow:0 0 48px #0006,inset 0 0 60px #ffffff05}50%{border-color:#fff3;box-shadow:0 0 72px #ffffff0a,inset 0 0 80px #ffffff0a}}@keyframes hero-frame-shimmer{0%{transform:translate(-120%)}to{transform:translate(120%)}}.hero-frame__corner{pointer-events:none;border-style:solid;border-color:#ffffff59;width:22px;height:22px;position:absolute}.hero-frame__corner--tl{border-width:2px 0 0 2px;top:14px;left:14px}.hero-frame__corner--tr{border-width:2px 2px 0 0;top:14px;right:14px}.hero-frame__corner--bl{border-width:0 0 2px 2px;bottom:14px;left:14px}.hero-frame__corner--br{border-width:0 2px 2px 0;bottom:14px;right:14px}.hero-frame__inner{z-index:1;flex-direction:column;align-items:center;width:100%;display:flex;position:relative;overflow:visible}.hero-mega-name{letter-spacing:-.06em;flex-direction:column;align-items:center;gap:.06em;margin:0 0 clamp(1.5rem,4vw,2.5rem);font-weight:800;line-height:1.05;display:flex;overflow:visible}.hero-mega-line{font-family:var(--font-hero);text-align:center;color:#fff;letter-spacing:-.04em;width:100%;padding-bottom:.08em;font-size:clamp(3.5rem,16vw,10.5rem);font-weight:600;line-height:1.08;display:block;overflow:visible}@media (prefers-reduced-motion:no-preference){.hero-mega-line--single{animation:6s ease-in-out infinite hero-line-float}}@keyframes hero-line-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.hero-mega-line--accent{color:#fff}.hero-text{max-width:42rem;color:var(--text-soft);margin:0 auto;padding-bottom:.2em;font-size:clamp(1rem,2.2vw,1.125rem);line-height:1.85;overflow:visible}.hero-about{flex-direction:column;align-items:center;width:100%;margin-top:0;padding-bottom:.25rem;display:flex;overflow:visible}.hero-about .hero-text{text-wrap:pretty}.hero-about .hero-text-follow{margin-top:1rem}.hero-cta-row{flex-wrap:wrap;justify-content:center;gap:12px;width:100%;max-width:34rem;margin-top:clamp(1.35rem,3.5vw,1.85rem);display:flex}.hero-cta{min-height:48px;font-family:var(--font-hero);letter-spacing:-.01em;text-transform:none;color:var(--text-h);box-shadow:none;-webkit-backdrop-filter:blur(12px);background:#ffffff0a;border:1px solid #fff3;border-radius:6px;justify-content:center;align-items:center;padding:0 24px;font-size:.9rem;font-weight:500;text-decoration:none;transition:background .22s,border-color .22s,transform .22s;display:inline-flex}.hero-cta:hover{color:#fff;background:#ffffff1a;border-color:#fff6}.hero-scroll-hint{font-family:var(--font-hero);letter-spacing:.35em;color:var(--muted);text-transform:uppercase;flex-direction:column;align-items:center;gap:10px;font-size:.65rem;display:flex}.hero-scroll-hint__line{transform-origin:top;background:linear-gradient(#ffffff73,#0000);width:1px;height:48px}@media (prefers-reduced-motion:no-preference){.hero-scroll-hint__line{animation:2s ease-in-out infinite scroll-hint-pulse}}@keyframes scroll-hint-pulse{0%,to{opacity:.5;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}.hero-actions{flex-wrap:wrap;gap:14px;margin:34px 0 48px;display:flex}.primary-link,.secondary-link{border-radius:999px;justify-content:center;align-items:center;min-height:52px;padding:0 20px;font-weight:600;transition:transform .22s,box-shadow .22s,background .22s;display:inline-flex}.primary-link{color:#0b0d12;background:linear-gradient(135deg,#e2e8f0,#cbd5e1);box-shadow:0 12px 32px #0006}.secondary-link{color:var(--text-h);border:1px solid var(--border);background:#ffffff0f}.primary-link:hover,.secondary-link:hover,.skill-tab:hover,.editorial-card:hover,.timeline-row:hover,.education-card:hover,.contact-panel:hover{box-shadow:0 16px 40px #0006}.hero-side{box-shadow:none;background:0 0;border:0;align-content:start;gap:16px;display:grid}.hero-card{border-radius:28px;padding:30px}.hero-card h2{margin-bottom:16px}.hero-card p{color:var(--text-soft);line-height:1.75}.card-label{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin-bottom:16px;font-size:.74rem;font-weight:600;display:inline-block}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.metric{border-radius:24px;min-height:140px;padding:22px}.metric strong{color:var(--text-h);margin-bottom:12px;font-size:1.2rem;display:block}.metric span{color:var(--text-soft);line-height:1.6}.feature-band{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.feature-pill{color:var(--text);background:var(--panel);border:1px solid var(--border);text-align:center;border-radius:18px;padding:18px 20px}.content-block{z-index:1;position:relative}.portfolio-shell--tech .content-block{flex-direction:column;align-items:center;width:100%;display:flex}.portfolio-shell--tech .content-block>:not(.socials-row){width:100%;max-width:min(1180px,100%)}.section-divider{justify-content:center;align-items:center;gap:16px;width:min(520px,80%);margin:0 auto;padding:clamp(1.5rem,4vw,2.5rem) 0;display:flex}.section-divider__line{background:linear-gradient(90deg,#0000,#22d3ee80);flex:1;height:1px;display:block}.section-divider__line:last-of-type{background:linear-gradient(90deg,#22d3ee80,#0000)}.section-divider__dot{background:var(--neon-cyan);border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0 12px #22d3eecc}@media (prefers-reduced-motion:no-preference){.section-divider__dot{animation:2.5s ease-in-out infinite divider-dot-pulse}}@keyframes divider-dot-pulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.35)}}.block-heading{max-width:56rem;margin-bottom:var(--block-heading-gap);text-align:center;z-index:10;margin-left:auto;margin-right:auto;position:relative}.portfolio-shell--tech .block-heading .section-kicker{margin-bottom:14px;display:block}.portfolio-shell--tech .block-heading h2{display:inline-block;position:relative}.portfolio-shell--tech .block-heading h2:after{content:"";opacity:.8;background:linear-gradient(90deg,#0000,#ffffff59,#0000);width:100%;height:1px;margin-top:12px;display:block}.intro-layout{grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);align-items:start;gap:28px;display:grid}.intro-main{gap:24px;display:grid}.large-copy{color:var(--text-soft);font-size:1.18rem;line-height:1.95}.art-panel{border:1px solid var(--border);min-height:360px;box-shadow:var(--shadow);background:radial-gradient(circle at 20% 20%,#60a5fa1f,#0000 24%),radial-gradient(circle at 78% 28%,#a78bfa24,#0000 28%),linear-gradient(135deg,#161a24f2,#0f121ae0);border-radius:30px;position:relative;overflow:hidden}.art-grid,.art-panel:before{content:"";position:absolute;inset:0}.art-grid{background-color:#0000;background-image:linear-gradient(#94a3b814 1px,#0000 1px),linear-gradient(90deg,#94a3b814 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:44px 44px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;-webkit-mask-image:linear-gradient(#000000bf,#0000 92%);mask-image:linear-gradient(#000000bf,#0000 92%)}.art-panel:before{background:linear-gradient(120deg,#0000 34%,#ffffff0f 47%,#0000 60%);animation:10s linear infinite shimmer;transform:translate(-30%)}.system-node,.data-link,.signal-dot,.orbit-ring{position:absolute}.system-node{border:1px solid var(--border-strong);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1e2330bf;border-radius:26px;box-shadow:0 14px 34px #00000059}.node-core{background:radial-gradient(circle at 30% 30%,#ffffff14,#60a5fa38),#161a26e6;border-radius:32px;width:118px;height:118px;top:104px;left:50%;transform:translate(-50%)}.node-ml{width:124px;height:74px;top:54px;left:74px}.node-api{width:138px;height:84px;top:72px;right:78px}.node-data{width:156px;height:92px;bottom:68px;left:74px}.node-ui{width:142px;height:82px;bottom:86px;right:78px}.data-link{transform-origin:0;background:linear-gradient(90deg,#60a5fa00,#60a5fae6,#60a5fa00);border-radius:999px;height:2px}.link-one{width:170px;top:132px;left:186px;transform:rotate(16deg)}.link-two{background:linear-gradient(90deg,#a78bfa00,#a78bfae0,#a78bfa00);width:158px;top:154px;right:178px;transform:rotate(-20deg)}.link-three{background:linear-gradient(90deg,#7dd3fc00,#7dd3fceb,#7dd3fc00);width:194px;bottom:132px;left:216px;transform:rotate(-10deg)}.signal-dot{background:linear-gradient(135deg,#60a5fa,#a78bfa);border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 6px #6366f140}.dot-one{top:126px;left:212px}.dot-two{top:165px;right:204px}.dot-three{bottom:142px;left:232px}.orbit-ring{border:1px solid #94a3b81f;border-radius:999px}.ring-one{width:224px;height:224px;top:34px;right:42px}.ring-two{width:180px;height:180px;bottom:22px;left:26px}.strength-grid,.education-list{gap:16px;display:grid}.skill-panel{min-height:280px}.editorial-card,.education-card,.contact-panel,.skill-panel{border-radius:26px;padding:28px}.editorial-index{color:#94a3b859;margin-bottom:14px;font-size:1.8rem;font-weight:700;display:inline-block}.editorial-card p,.skill-panel p,.timeline-row p,.education-card p,.contact-panel p{color:var(--text-soft);line-height:1.75}.split-heading{grid-template-columns:minmax(320px,1fr) auto;align-items:end;gap:24px;display:grid}.skills-heading-centered{text-align:center;margin-bottom:var(--block-heading-gap);flex-direction:column;align-items:center;gap:clamp(1.15rem,3vw,1.65rem);display:flex}.skills-block .block-heading{max-width:none}.split-heading>div:first-child{max-width:800px}.skill-tabs{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.skill-tab{appearance:none;border:1px solid var(--border);color:var(--text-soft);font:inherit;cursor:pointer;transition:transform .22s var(--ease-smooth), background .22s var(--ease-smooth), color .22s var(--ease-smooth), border-color .22s var(--ease-smooth), box-shadow .22s var(--ease-smooth);background:#ffffff0d;border-radius:999px;padding:10px 18px}.skill-tab.is-active{color:#ecfeff;background:linear-gradient(135deg,#06b6d459,#22d3ee33);border-color:#22d3ee8c;box-shadow:0 0 28px #22d3ee40}.skill-panel-heading{flex-direction:column;gap:8px;margin-top:24px;margin-bottom:24px;display:flex}.panel-copy{max-width:80ch}.skill-chip-grid{flex-wrap:wrap;gap:12px;display:flex}.skill-chip{min-height:42px;color:var(--text-h);border:1px solid var(--border);background:#ffffff0f;border-radius:999px;align-items:center;padding:0 14px;display:inline-flex}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));justify-items:stretch;gap:clamp(1.25rem,3vw,2rem);margin-top:0;display:grid}.portfolio-shell--tech.portfolio-shell--minimal .projects-grid{max-width:var(--section-content-max);justify-content:stretch;margin-left:auto;margin-right:auto}.project-card{background:var(--panel-strong);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);transition:box-shadow .28s var(--ease-smooth), border-color .28s var(--ease-smooth), transform .28s var(--ease-smooth);border-radius:12px;flex-direction:column;justify-content:space-between;height:100%;padding:clamp(1.5rem,3vw,2rem);display:flex;position:relative;overflow:hidden;box-shadow:0 12px 40px #00000059}.portfolio-shell--tech .project-card:before{content:"";background:linear-gradient(90deg, transparent, var(--neon-cyan), transparent);opacity:0;height:1px;transition:opacity .28s;position:absolute;top:0;left:0;right:0}.portfolio-shell--tech .project-card:hover{border-color:#22d3ee66;box-shadow:0 16px 48px #00000073,0 0 32px #22d3ee1a}.portfolio-shell--tech .project-card:hover:before{opacity:1}.project-watermark{color:#f8fafc09;z-index:0;pointer-events:none;font-size:160px;transition:color .25s;position:absolute;top:-20px;bottom:auto;right:-20px;transform:none}.project-card:hover .project-watermark{color:#f8fafc0c}.project-spotlight{pointer-events:none;z-index:0;border-radius:28px;transition:opacity .3s;position:absolute;inset:0;overflow:hidden}.project-content,.project-tags{z-index:1;position:relative}.project-card:hover{border-color:var(--border-strong);box-shadow:0 14px 36px #00000061}.project-title{letter-spacing:-.02em;margin-top:12px;margin-bottom:16px;font-size:1.35rem}.project-description{color:var(--text-soft);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.95rem;line-height:1.6;display:-webkit-box;overflow:hidden}.education-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:clamp(1.25rem,3vw,2rem);margin-top:0;display:grid}.portfolio-shell--tech .education-grid{justify-items:center;max-width:960px;margin-left:auto;margin-right:auto}.portfolio-shell--tech .timeline-block--scroll{width:100%;max-width:1170px;margin-left:auto;margin-right:auto}.portfolio-shell--tech .skill-panel,.portfolio-shell--tech .apple-skill-grid{flex-wrap:wrap;justify-content:center;display:flex}.portfolio-shell--tech .contact-block{flex-direction:column;align-items:center;display:flex}.socials-block{padding-top:0;padding-bottom:clamp(1.25rem,3vw,2rem)}.portfolio-shell--tech .socials-block{flex-direction:column;align-items:center;display:flex}.socials-row{flex-direction:row;justify-content:center;align-items:center;gap:24px;width:auto;max-width:none;display:flex}.portfolio-shell--tech .site-footer .footer-content{text-align:center}.project-card-wrap{height:100%;display:flex}.education-card{-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);transition:box-shadow .28s var(--ease-smooth), border-color .28s var(--ease-smooth);background:linear-gradient(145deg,#08101cf2,#040810e6);border-radius:12px;flex-direction:column;justify-content:center;padding:clamp(1.75rem,4vw,2.75rem);display:flex;position:relative;overflow:hidden;box-shadow:0 12px 40px #00000059}.portfolio-shell--tech .education-card:hover{border-color:#22d3ee59;box-shadow:0 16px 48px #0006,0 0 24px #22d3ee14}.education-card:hover{box-shadow:0 14px 36px #00000061}.education-content{z-index:1;position:relative}.education-date{color:var(--muted);margin-bottom:12px;font-size:.95rem;font-weight:500;display:block}.education-degree{letter-spacing:-.02em;color:var(--text);margin-bottom:12px;font-size:1.6rem;line-height:1.3}.education-school{color:var(--text-soft);font-size:1.05rem;font-weight:500;line-height:1.6}.timeline-block--scroll .vertical-timeline:before{opacity:0!important;visibility:hidden!important}.timeline-sequential-wrap{width:100%;position:relative}.timeline-draw-lines{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.timeline-vertical-layer.vertical-timeline{z-index:1;position:relative}.vertical-timeline{max-width:1170px!important;margin:0 auto!important;padding:0!important}.vertical-timeline:before{background:linear-gradient(#0000,#94a3b82e 10% 90%,#0000)!important}.timeline-block--scroll .timeline-scroll-veil{will-change:opacity;width:100%}.timeline-row-veil{display:contents}.timeline-row-veil>.vertical-timeline-element{will-change:opacity}.timeline-block--scroll .vertical-timeline-element-icon .timeline-scroll-icon-inner{transform-origin:50%;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.timeline-block--scroll .vertical-timeline-element-icon .timeline-scroll-icon-inner svg{margin:0;display:block;position:static;top:auto;left:auto}.vertical-timeline-element-content{cursor:default;text-align:center;transition:box-shadow .3s!important}.vertical-timeline-element:hover .vertical-timeline-element-content{box-shadow:0 16px 48px #0006!important}.vertical-timeline-element-date{display:none!important}.timeline-date-inside{margin-bottom:12px}.timeline-date-pill{color:var(--muted);white-space:nowrap;font-size:.95rem;font-weight:500;display:block}.abstract-card{color:#fff;text-align:center;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.abstract-card h3{z-index:2;font-size:1.4rem;line-height:1.5;position:relative}.abstract-glow{z-index:1;background:radial-gradient(circle,#3b82f64d 0%,#0000 60%);width:150%;height:150%;animation:6s ease-in-out infinite alternate pulse-glow;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes pulse-glow{0%{opacity:.5;transform:translate(-50%,-50%)scale(.8)}to{opacity:1;transform:translate(-50%,-50%)scale(1.1)}}.education-school{color:var(--muted);margin-bottom:12px;font-weight:500}.socials-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-top:24px;display:grid}.social-icon-circle{background:var(--panel-strong);border:1px solid var(--border);width:64px;height:64px;color:var(--text-soft);border-radius:50%;justify-content:center;align-items:center;text-decoration:none;transition:all .3s;display:flex;box-shadow:0 8px 28px #00000059}.social-icon-circle:hover{border-color:var(--border-strong);box-shadow:0 14px 36px #00000073}.github-circle,.linkedin-circle{color:#e2e8f0}.site-footer{text-align:center;z-index:1;padding:0;position:relative;overflow:hidden}.portfolio-shell--minimal .site-footer{padding:0}.footer-content{z-index:1;color:#fff;flex-direction:column;align-items:center;gap:.35rem;display:flex;position:relative}.footer-logo{color:var(--text-h);margin-bottom:8px;font-size:2rem}.site-footer .footer-signoff,.site-footer .copyright{font-family:var(--font-hero);letter-spacing:-.03em;color:var(--text-h);text-transform:none;font-weight:500;font-size:var(--type-body,1rem);line-height:var(--type-line-body,1.72);margin:0}.contact-panel{border:1px solid var(--border-strong);text-align:center;background:linear-gradient(145deg,#08101cf2,#040810eb);border-radius:12px;max-width:800px;margin:0 auto;padding:40px;position:relative;box-shadow:0 20px 48px #0006,0 0 60px #22d3ee0f}.portfolio-shell--tech .contact-panel:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(135deg,#22d3ee66,#0000 40%,#a78bfa4d);padding:1px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.contact-panel h2{margin-bottom:24px}.contact-panel p{color:var(--text-soft);margin-bottom:32px;font-size:1.1rem}.contact-stack{justify-content:center;display:flex}.contact-button-animated{color:#020408;font-family:var(--font-hero);letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg,#22d3ee,#0ea5e9);border-radius:4px;justify-content:center;align-items:center;padding:16px 36px;font-size:.85rem;font-weight:700;text-decoration:none;transition:transform .3s,box-shadow .3s;display:inline-flex;box-shadow:0 0 32px #22d3ee59}.contact-button-animated:hover{box-shadow:0 0 48px #22d3ee80}@media (width<=960px){.hero--tech .nav--symmetric{grid-template-columns:1fr;justify-items:center;gap:20px}.hero--tech .nav--symmetric .wordmark,.hero--tech .nav--symmetric .nav-links{grid-column:1;justify-self:center}.hero--tech .nav-spacer{display:none}.hero--tech .nav-links{justify-content:center}}@media (width<=1024px){.portfolio-shell{width:min(100% - 2 * var(--container-inline), 1180px);padding-top:22px}.nav,.hero-layout,.intro-layout,.split-heading{grid-template-columns:1fr}.nav{align-items:flex-start}.split-heading>div:first-child{max-width:none}.feature-band,.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-panel{position:static}}@media (width<=700px){.portfolio-shell{width:min(100% - 2 * var(--container-inline), 1180px);padding-bottom:clamp(2rem,10vw,4rem)}.hero-card,.metric,.editorial-card,.skill-panel,.timeline-item,.contact-panel{padding:22px}.hero-mega-line{font-size:clamp(2.75rem,14vw,7rem)}.hero-stage{min-height:60vh}.art-panel{min-height:280px}.node-ml,.node-api,.node-data,.node-ui{width:112px}.feature-band,.metrics-grid{grid-template-columns:1fr}.nav-links{gap:12px}.timeline-topline{flex-direction:column;align-items:flex-start}}@keyframes shimmer{0%{transform:translate(-38%)}to{transform:translate(135%)}}.floating-icon-card{-webkit-backdrop-filter:none;width:96px;height:96px;box-shadow:none;filter:drop-shadow(0 12px 24px #00000026);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform .3s,filter .3s;display:flex}.floating-icon-card svg{filter:drop-shadow(0 4px 12px #00000080);opacity:.85}.apple-skill-grid{flex-wrap:wrap;justify-content:center;gap:24px;margin-top:0;display:flex}.apple-skill-card{background:var(--panel-strong);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);cursor:default;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:16px;width:140px;padding:32px 24px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s,border-color .3s;display:flex;box-shadow:0 12px 36px #00000059}.apple-skill-card:hover{border-color:#22d3ee59;box-shadow:0 22px 50px #00000073,0 0 28px #22d3ee1f}.apple-skill-icon{width:64px;height:64px;color:var(--text-h);filter:drop-shadow(0 4px 16px #00000073);justify-content:center;align-items:center;display:flex}.apple-skill-name{color:var(--text-h);text-align:center;font-size:.95rem;font-weight:600}.portfolio-shell--minimal .section-head__title,.portfolio-shell--minimal .section-head__word,.portfolio-shell--minimal .section-head__word--accent,.portfolio-shell--minimal .section-head__word--solo{font-size:var(--type-section);letter-spacing:-.03em;font-weight:500;line-height:1.12}.portfolio-shell--minimal .tech-project-card__body h3,.portfolio-shell--minimal .tech-project-card__title{font-size:var(--type-card-title);font-weight:600;line-height:var(--type-line-title);letter-spacing:-.02em;color:var(--text-h)}.portfolio-shell--minimal .tech-edu-card{font-size:var(--type-body);line-height:var(--type-line-body)}.portfolio-shell--minimal .tech-edu-card>h3,.portfolio-shell--minimal .tech-edu-card h3.tech-reveal-title,.portfolio-shell--minimal .tech-edu-card__primary h3,.portfolio-shell--minimal .tech-edu-card__body>h3{font-size:var(--type-card-role);font-weight:600;line-height:var(--type-line-title);letter-spacing:-.02em;color:var(--text-h)}.portfolio-shell--minimal .tech-edu-card__meta,.portfolio-shell--minimal .tech-edu-card>.tech-edu-card__meta{font-size:var(--type-card-meta);font-weight:500;line-height:var(--type-line-meta);letter-spacing:-.01em;text-transform:none;color:var(--muted)}.portfolio-shell--minimal .tech-edu-card__school,.portfolio-shell--minimal .tech-edu-card>.tech-edu-card__school{font-size:var(--type-card-org);font-weight:400;line-height:var(--type-line-meta);letter-spacing:-.01em;text-transform:none;color:var(--text-soft)}.portfolio-shell--minimal .about__copy,.portfolio-shell--minimal .tech-project-card__desc,.portfolio-shell--minimal .min-contact__copy,.portfolio-shell--minimal .tech-section--footer .footer-signoff,.portfolio-shell--minimal .tech-section--footer .copyright{font-size:var(--type-body);line-height:var(--type-line-body);font-weight:400}.portfolio-shell--minimal .tech-project-card__link{font-size:var(--type-ui);letter-spacing:-.01em;text-transform:none;font-weight:500;line-height:1}.portfolio-shell--minimal .site-nav a,.portfolio-shell--minimal .skill-tab-minimal,.portfolio-shell--minimal .skill-chip-minimal,.portfolio-shell--minimal .skill-chip-minimal__label,.portfolio-shell--minimal .contact-social-link__label{font-size:var(--type-ui);line-height:var(--type-line-meta)}.portfolio-shell--minimal .site-nav a{letter-spacing:-.02em;text-transform:none;font-weight:500}.portfolio-shell--minimal .skill-tab-minimal,.portfolio-shell--minimal .skill-chip-minimal,.portfolio-shell--minimal .skill-chip-minimal__label{letter-spacing:-.01em;font-weight:500}.portfolio-shell--minimal .contact-social-link__label{letter-spacing:-.01em;text-transform:none;font-weight:500}.portfolio-shell--minimal .min-contact__link{font-size:var(--type-ui);letter-spacing:-.01em;text-transform:none;font-weight:500;line-height:1}.portfolio-shell--minimal .footer-signoff,.portfolio-shell--minimal .copyright{font-size:var(--type-body);line-height:var(--type-line-body)}.portfolio-shell--minimal .footer-signoff{color:var(--text-h);font-weight:500}.portfolio-shell--minimal .copyright{color:var(--text-soft);font-weight:400}.portfolio-shell--minimal .hero__tagline{font-size:var(--type-hero-tagline);line-height:var(--type-line-body);font-weight:500}@media (width<=640px){.portfolio-shell--minimal .section-head__title,.portfolio-shell--minimal .section-head__word,.portfolio-shell--minimal .section-head__word--accent,.portfolio-shell--minimal .section-head__word--solo{font-size:clamp(1.6rem,7vw,1.95rem)}}.portfolio-shell--tech.portfolio-shell--minimal{font-size:var(--type-body);line-height:var(--type-line-body)}.portfolio-shell--tech.portfolio-shell--minimal .section-head__title,.portfolio-shell--tech.portfolio-shell--minimal .section-head__word,.portfolio-shell--tech.portfolio-shell--minimal .section-head__word--accent,.portfolio-shell--tech.portfolio-shell--minimal .section-head__word--solo{font-size:var(--type-section);font-weight:500;line-height:1.12}.portfolio-shell--tech.portfolio-shell--minimal .hero__tagline{font-size:var(--type-hero-tagline);line-height:var(--type-line-body);font-weight:500}.portfolio-shell--tech.portfolio-shell--minimal .site-nav a{font-size:var(--type-ui);line-height:var(--type-line-meta)}.portfolio-shell--tech.portfolio-shell--minimal .wordmark{font-size:var(--type-body)}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card{font-size:var(--type-body);line-height:var(--type-line-body)}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__meta,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>.tech-edu-card__meta{font-size:var(--type-card-meta);line-height:var(--type-line-meta);letter-spacing:-.01em;text-transform:none}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>h3,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>.tech-reveal-title,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card h3.tech-reveal-title{font-size:var(--type-card-role);line-height:var(--type-line-title);color:var(--text-h)}.portfolio-shell--tech.portfolio-shell--minimal .section-head--experience .section-head__word,.portfolio-shell--tech.portfolio-shell--minimal .section-head--experience .section-head__word--accent,.portfolio-shell--tech.portfolio-shell--minimal .section-head--experience .section-head__word--solo,.portfolio-shell--tech.portfolio-shell--minimal .section-head--volunteer .section-head__word,.portfolio-shell--tech.portfolio-shell--minimal .section-head--volunteer .section-head__word--accent,.portfolio-shell--tech.portfolio-shell--minimal .section-head--volunteer .section-head__word--solo,.portfolio-shell--tech.portfolio-shell--minimal .section-head--education .section-head__word,.portfolio-shell--tech.portfolio-shell--minimal .section-head--education .section-head__word--accent,.portfolio-shell--tech.portfolio-shell--minimal .section-head--education .section-head__word--solo{color:var(--text-h)}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__school,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>.tech-edu-card__school{font-size:var(--type-card-org);line-height:var(--type-line-meta)}.portfolio-shell--tech.portfolio-shell--minimal .tech-project-card__body h3,.portfolio-shell--tech.portfolio-shell--minimal .tech-project-card__title{font-size:var(--type-card-title);line-height:var(--type-line-title)}.portfolio-shell--tech.portfolio-shell--minimal .tech-project-card__kind{font-size:var(--type-ui);line-height:var(--type-line-meta)}.portfolio-shell--tech.portfolio-shell--minimal .tech-project-card__desc{font-size:var(--type-body);line-height:var(--type-line-body)}.portfolio-shell--tech.portfolio-shell--minimal .tech-project-card__link{font-size:var(--type-ui);line-height:1}.portfolio-shell--tech.portfolio-shell--minimal :is(.about__copy,.min-contact__copy),.portfolio-shell--tech.portfolio-shell--minimal .site-footer :is(.footer-signoff,.copyright){font-size:var(--type-body);line-height:var(--type-line-body)}.portfolio-shell--tech.portfolio-shell--minimal .skill-tab-minimal,.portfolio-shell--tech.portfolio-shell--minimal .skill-chip-minimal,.portfolio-shell--tech.portfolio-shell--minimal .skill-chip-minimal__label{font-size:var(--type-ui);line-height:var(--type-line-meta)}.portfolio-shell--tech.portfolio-shell--minimal .min-contact__link{font-size:var(--type-ui);line-height:1}.portfolio-shell--tech.portfolio-shell--minimal .contact-social-link__label{font-size:var(--type-ui);line-height:var(--type-line-meta);letter-spacing:-.01em;text-transform:none}@media (width<=640px){.portfolio-shell--tech.portfolio-shell--minimal .section-head__title,.portfolio-shell--tech.portfolio-shell--minimal .section-head__word,.portfolio-shell--tech.portfolio-shell--minimal .section-head__word--accent,.portfolio-shell--tech.portfolio-shell--minimal .section-head__word--solo{font-size:clamp(1.6rem,7vw,1.95rem)}.portfolio-shell--tech.portfolio-shell--minimal .site-nav a{font-size:max(.8125rem, var(--type-ui))}}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-stack{gap:var(--credential-stack-gap);width:100%;max-width:var(--section-content-max);flex-direction:column;margin-inline:auto;display:flex}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-stack .tech-edu-card{box-sizing:border-box;width:100%}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card{grid-template-rows:var(--credential-meta-slot-h) var(--credential-role-slot-h) var(--credential-org-slot-h);place-items:center;gap:var(--credential-row-gap);box-sizing:border-box;width:100%;padding:var(--credential-pad-y) var(--credential-pad-x);text-align:center;display:grid}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>.tech-edu-card__meta,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__meta{width:100%;max-width:52ch;min-height:var(--credential-meta-slot-h);text-align:center;text-wrap:balance;grid-row:1;justify-content:center;justify-self:center;align-items:center;margin:0;margin-inline:auto;display:flex}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>h3,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>.tech-reveal-title,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card h3.tech-reveal-title,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__role,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__primary h3,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__body>h3{width:100%;max-width:52ch;min-height:var(--credential-role-slot-h);text-align:center;text-wrap:balance;line-height:var(--type-line-title,1.35);color:var(--text-h);grid-row:2;justify-content:center;align-items:center;margin:0;display:flex}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>.tech-edu-card__school,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__school{width:100%;max-width:52ch;min-height:var(--credential-org-slot-h);text-align:center;text-wrap:balance;grid-row:3;justify-content:center;justify-self:center;align-items:center;margin:0;margin-inline:auto;display:flex}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__primary{display:contents}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__primary h3{grid-row:2;margin:0}@media (width<=640px){.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card{justify-content:flex-start;align-items:center;gap:var(--credential-row-gap);flex-direction:column;display:flex}.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>.tech-edu-card__meta,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__meta,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>h3,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>.tech-reveal-title,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card h3.tech-reveal-title,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__role,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__primary h3,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__body>h3,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card>.tech-edu-card__school,.portfolio-shell--tech.portfolio-shell--minimal .tech-edu-card__school{grid-row:unset;width:100%;max-width:52ch;min-height:0;display:block}}
